У меня есть проблема со следующим назначением:Решение Структура для Java
Создать программу, которая предлагает пользователю ввести два значения: рейтинг фильма и его возраст. Используя структуру принятия решений, определите, разрешено ли пользователю видеть фильм в театре, исходя из введенного рейтинга и возраста. Наконец, отобразите результат этого решения пользователю.
Вот мой код, я сделал Alt + Shift + F в NetBeans, прежде чем я это:
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package age;
/**
*
* @author Jason
*/
import java.util.Scanner;
public class Age {
public static void main(String[] args) {
Scanner user_input = new Scanner(System.in);
String user_age;
System.out.print("Enter your age: ");
user_age = user_input.next();
String mrating;
System.out.print("Enter the movie rating: ");
mrating = user_input.next();
}
{
if (user_age < 13 + mrating = G);{
System.out.print("You are of the right age for this movie");
}
else{
System.out.print(" You are not of correct age for this movie");
}
if (user_age >= 13 + mrating = PG13);{
System.out.print("You are of the right age for this movie");
}
else{
System.out.print(" You are not of correct age for this movie");
}
if (user_age >= 17 + mrating = R);{
System.out.print("You are of the right age for this movie");
}
else{
System.out.print(" You are not of correct age for this movie");
}
}
}
Если я двигаю закрывающую скобку для века до перед if
заявления начать. Я могу заставить дисплей задавать возраст и рейтинг пользователя, после чего программа заканчивается без каких-либо результатов. Если я выйду из скобки, программа полностью выйдет из строя. Я новичок в Java и настолько смущен, что я работал над этим с hrs с книгой и веб-сайтами, но я начинаю запутываться. Кроме того, user_age
и mrating
получают сообщение об ошибке, поскольку переменная не используется.
У вас есть блок кода в вашем классе, который не ссылается на переменные, которые не были объявлены. И в этом блоке кратные ваши операторы if имеют свисающие точки с запятой - например ('if (user_age <13 + mrating = G); {'). Это ваш настоящий код? – Perception
Обратите внимание, что первая закрывающая скобка имеет отступы, чтобы выровнять свой метод 'main()'. Это означает, что операторы 'if' не находятся в этом методе. Удалите эту скобу и следующую открытую скобу и снова нажмите Alt-Ctrl-F. –
@Perception Нет проблем с «* not * ссылкой на переменные, которые * не были объявлены». –