Почему программа заканчивает работу без ошибки после вывода на экран "Какое действие хотите совершить?" ?
import java.util.Scanner;
public class Calculator {
public static int addition(int x, int y) {
int result = x + y;
return result;
}
public static int subtraction(int x, int y) {
int result = x - y;
return result;
}
public static int multiplication(int x, int y) {
int result = x * y;
return result;
}
public static int division(int x, int y) {
int result = x / y;
return result;
}
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("Введите первое число:");
int firstNumber = scan.nextInt();
System.out.println("Введите второе число:");
int secondNumber = scan.nextInt();
System.out.println("Какое действие хотите совершить? (сложение, вычитание, умнрожение, деление)");
String action = scan.nextLine();
if (action=="сложение") {
System.out.println(addition(firstNumber, secondNumber));
} else if(action=="вычитание") {
System.out.println(subtraction(firstNumber, secondNumber));
} else if (action=="умножение") {
System.out.println(multiplication(firstNumber,secondNumber));
} else if(action=="деление") {
if (secondNumber!=0) {
System.out.println(division(firstNumber, secondNumber));
} else {
System.out.println("Ошибка.");
}
}
}
}
Nastya Semyonova
10 уровень
Программа прерывает работу
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Anonymous #3321774
25 сентября, 18:33
Well, there are some logical error with your code, you can fix it by following this code.
Thanks 0
it
3 сентября, 10:02
В буфере остается символ новой строки (Enter), и scan.nextLine(); сразу считывает этот символ как пустую строку.
пиши либо так:
либо так:
либо так:
+1
Nastya Semyonova
3 сентября, 10:42
спасибо))
0