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

Ребят проблема с кодом java

Morty Forged Ученик (73), на голосовании 1 месяц назад
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner( System.in );
System.out.print("Введите первое число");
double num1 = scan.nextDouble();
System.out.print("Введите второе число");
double num2 = scan.nextDouble();
double res1 = num1 + num2;
double res2 = num1 - num2;
double res3 = num1 * num2;
double res4 = num1 / num2;
System.out.print("выберите действие напишите res1 для сложения напишите res2 для вычитания напишите res3 для умножения напишите res4 для деления");
double resa = scan.nextDouble();
if ( resa == res1) {

System.out.println("Результат:" + res1);
}
if ( resa == res2) {

System.out.println("Результат:" + res2);
}
if (resa == res3) {

System.out.println("Результат:" + res3);
}
if ( resa == res4) {

System.out.println("Результат:" + res4);
}

} }
оно выдает ошибку при результате
Exception in thread "main" java.util.InputMismatchException
at java.base/java.util.Scanner.throwFor(Scanner.java:939)
at java.base/java.util.Scanner.next(Scanner.java:1594)
at java.base/java.util.Scanner.nextDouble(Scanner.java:2564)
at Main.main(Main.java:14)

Process finished with exit code 1
пж обьясните для чайника что не так после этого если в коде нужна еще какая то команда расскажите подробнее что она делает я новичок по джаве
Голосование за лучший ответ
Рустам Абдрашитов Мудрец (10316) 2 месяца назад
На
 import java.util.Scanner; 

public class Main {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
double num1 = scan.nextDouble(), num2 = scan.nextDouble();
double result = switch (scan.next()) {
case "+" -> num1 + num2;
case "-" -> num1 - num2;
case "*" -> num1 * num2;
case "/" -> num1 / num2;
case "^" -> Math.pow(num1, num2);
case "%" -> num1 % num2;
case "sqrt" -> Math.sqrt(num1);
default -> Double.NaN;
};
System.out.println(Double.isNaN(result) ? "Неверный выбор." : "Результат: " + result);
}
}
Оракул Оракул (62204) 2 месяца назад
Вводите дробные числа через точку, а не запятую
Александр Искусственный Интеллект (303499) 2 месяца назад
ты не рассказываешь как ты числа вводишь... сразу оба числа или по одному. и если сразу оба, то как ты их разделяешь...

(глядя на твой код)
ты до выбора действия "на всякий случай" уже просчитываешь все возможные варианты?
прикинь все бы программы так делали... сидишь ждёшь пока она всё просчитает и потом только спросит тебя чё нада делать...

и ты даже не проверяешь случай когда num2 равно нулю?
Похожие вопросы