Java

Java, можно ли сделать так, чтобы пользователь сам вводил, например, то что ему нужно сосчитать?

Делал через Scanner, ну ему чет не нравится.
В действительности, тебе нужно сначала научиться писать простенькую программу, которая будет получать два числа и далее передавать их в метод. То есть, у тебя не будет как таковой возможности управлять видом арифметической операции (умножением, делением и тд) между числами. (Пример такой программы я привел ниже).

Если ты так же захочешь и управлять видом операции между каждым числом, то нужно будет писать "распознавание переданного символа. (Это уже задача после того, как ты освоишь основу Scannera)

В данном случае есть как минимум пару способов:

1) Использовать scanner и получить данные введеные пользователем при запуске, а далее эти данные передать в метод для подсчета.

2) Использовать BufferedReader, который все сделает так же, как и scanner, но является более современным подходом.

3) При запуске любой программы у пользователя есть возможность передать аргументы в массив String[] args, а далее эти элементы передать в метод для подсчета.
public static void main (String[] args) - Это и есть массив, который хранит аргументы, как их передать, например, в среде intelij idea смотри в гугле.
Обрати внимание, что данный способ является "устаревшим".

Вот готовый написаный код для Scanner.

public class ExampleOfInput {
public static void main(String[] args) {

Scanner scanner = new Scanner(System.in);
System.out.println("Введите первое число");
int a = scanner.nextInt();
System.out.println("Введите второе число");
int b = scanner.nextInt();
System.out.println(calculate(2,2));
}

private static int calculate(int a, int b){
int result = 0;
return result = a*b + 10;
}

}
Алексей Иванов
Алексей Иванов
1 616
Лучший ответ
Андрей Кравец Я так и делал, как ты написал в примере, ещё писал чтобы пользователь вводил желаемое действие, но тогда получалось только только два числа и одно действие. Думаю о том, как бы сделать так, чтобы можно было сделать больше, в идеале - столько сколько нужно пользователю.
всё что ты подсовываешь сканеру является простро "текстом"... или "числом"...
никакие "выражения" сканнер не понимает... он не для этого придуман...
все программы для вычисления таких выражений пилят то что им подсунули на куски и определяют где число, где знак операции, в каком порядке выполнять эти операции... всего этого готового в джаве нет... ясен пень, кто-то уже настрадал библиотеки на джаве для таких нужд... но это не значит что это автаматически есть в установленной джаве...
Андрей Никитин
Андрей Никитин
90 800
Андрей Кравец Печаль беда, но все же спасибо.
Чё нить придумаю.
Когда делал через сканер, подключал соответствующую библиотеку?
Андрей Кравец Ты про import java.util.Scanner?
Его да, если есть что-то ещё, то я этого не знаю

Похожие вопросы