Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Всем привет , начал заниматься программированием и не могу понять в чём ошибка кода

матвей крюков Ученик (149), на голосовании 3 месяца назад
Вот сам код:
import java.util.Scanner;

public class currencyconverter {
public static void main(String[] args) {
Scanner scanner = new Scanner( System.in );
double rateUSD = 81.9;
double rateEUR = 87.7;
double rateCNY = 11.49;
System.out.println("Введите команду (1 - доллары, 2 - евро, 3 - юаны):");
int command = scanner.nextInt();
System.out.println("Введите сумму рублей:");
double roubles = scanner.nextDouble();

if (roubles < 0) {
System.out.println("Ошибка: сумма рублей не может быть отрицательной.");
} else {
if (command == 1) {
double result = roubles / rateUSD;
System.out.println("Было введено " + roubles + " рублей, в долларах это " + result);
} else if (command == 2) {
double result = roubles / rateEUR;
System.out.println("Было введено " + roubles + " рублей, в евро это " + result);
} else if (command == 3) {
double result = roubles / rateCNY;
System.out.println("Было введено " + roubles + " рублей, в юанях это " + result);
} else {
System.out.println("Такой команды нет.");
}
}

System.out.println("Программа завершена.");
}
}
Надо было сделать конвертер валют, но он выдаёт ошибку:
Произошла ошибка компиляции ваших файлов:
./submission/Practicum.java:27: error: class, interface, or enum expected
import java.util.Scanner;
^
1 error
Так же есть второй вариант кода:
public class currencyconverter {
public static void main(String[] args) {

double rateUSD = 81.9;
double rateEUR = 87.7;
double rateCNY = 11.49;

int command = 1;
double roubles = 1000;

if (command == 1) {
double result = roubles / rateUSD;
if (result < 0) {
System.out.println("Ошибка: некорректные значения.");
} else {
System.out.println("Было введено [количество рублей], в долларах это [полученное значение]);
}
} else if (command == 2) {
double result = roubles / rateEUR;
if (result < 0) {
System.out.println("Ошибка: некорректные значения.");
} else {
System.out.println("Было введено " + roubles + " рублей, в евро это " + result);
}
} else if (command == 3) {
double result = roubles / rateCNY;
if (result < 0) {
System.out.println("Ошибка: некорректные значения.");
} else {
System.out.println("Было введено " + roubles + " рублей, в юанях это " + result);
}
} else {
System.out.println("Такой команды нет.");
}

System.out.println("Программа завершена.");
}
}
Но так тоже ошибка(

Произошла ошибка компиляции ваших файлов:
./submission/Practicum.java:42: error: unclosed string literal
System.out.println("Было введено [количество рублей], в долларах это [полученное значение]);
^
1 error
Голосование за лучший ответ
Оракул Оракул (62084) 4 месяца назад
Первый вариант вполне рабочий, тот код, что вы предоставили. У вас запускаемый код имеет что-то еще.
Второй код, отсутствует закрывающая кавычка в строке
 System.out.println("Было введено [количество рублей], в долларах это [полученное значение]");  
V̲i̲s̲t̲a̲s̲t̲e̲r̲ Искусственный Интеллект (263750) 4 месяца назад
Сам код рабочий... но Название файла Java должно соответствовать названию публичного класса. А именно должен быть CurrencyConverter.java и такой же класс.
Александр Искусственный Интеллект (301529) 4 месяца назад
ты начал учиться с середины непонятного тебе кода?
не учил что название класса и файла должны совпадать?
не учил что принято названия класса делать с Заглавной буквы?
результаты вычисления наверное округлять нужно...
Похожие вопросы