#java
Вопрос:
Я очень новичок в Java или кодировании в целом, и я пытаюсь создать программу, которая будет принимать два значения x и y и показывать сумму, произведение и частное двух значений. При запуске этого кода я получаю сообщения об ошибках, сообщающие мне, что x и y «могут не быть инициализированы». Но x и y определяются только позже в сканере. Как мне это исправить?
import java.util.Scanner; public class Main { public static void main(String[] args) { float x; float y; float sum = x y; float product = x * y; float quotient = x / y; Scanner input = new Scanner (System.in); System.out.println("Enter a value for x: "); x = input.nextFloat(); System.out.println("Enter a value for y: "); y = input.nextFloat(); input.close(); System.out.println("x y is: " sum); System.out.println("x * y is: " product); System.out.println("x / y is: " quotient); } }
Комментарии:
1. Вы выполняете операцию сразу после создания переменных
x
иy
(значения еще не были назначены). Вы должны выполнить операцию после присвоения им значений(после получения входных данных от пользователя).
Ответ №1:
объявите переменные
float x; float y;
присвоение значений
x = input.nextFloat(); y = input.nextFloat();
затем выполните вычисления
float sum = x y; float product = x * y; float quotient = x / y;
Без присвоения каких-либо значений вы не можете выполнять какие-либо вычисления на них.
Ответ №2:
вы можете инициализировать переменные при их задержке. Рекомендуется инициализировать переменные перед вычислением.
…..
float x = 0; float y = 0;
… код продолжается….
Кроме того, желательно выполнить вычисление суммы, уравнения, произведения после получения значений со сканера.
input.close float sum = x y; float product = x * y; float quotient = x / y;