Блок 1. Раздел 2. Тема 4

Создаем тест, лотерею и калькулятор
с помощью if и Scanner

Мы прошли, как считать данные с клавиатуры и оператор if. Наконец-то у нас развязаны руки, мы можем написать практически все, что угодно - по крайней мере простые программы. Приступим к долгожданному творчеству!
Программа 1. Спрашиваем у человека, сколько будет 7*8, он вводит ответ, и мы сравниваем его с правильным значением 56. Это программа-тест. Вы можете сами сделать больше вопросов
// сначала стандартная шапка
package javaapplicationA; 
import java.util.Scanner;
public class JavaApplicationA {
    public static void main(String[] args) {
// Задаем вопрос:
	System.out.println ("Привет!");
	System.out.println ("Сколько будет 7*8?");
        
// Заводим x для хранения ответа и myscan, чтобы считать ответ
	int     x   =  0;       
	Scanner myscan = new Scanner (System.in);
        
// Икс приобретает значение функции nextInt ()
// nextInt возвращает число, введенное с клавиатуры
	x = myscan.nextInt ();
// Если введено 56, то распечатать похвалу        
	if (x == 56) { // помните, что двойное == значит сравнить, одинарное = значит изменить
		System.out.println ("Да, это совершенно верно!");
	}		
        	else {      // иначе распечатать, что человек ошибся
		System.out.println ("Нет, это просто абсурд!.. ");
	}  	
/* так можно спрашивать и получать ответ и дальше, если повторять аналогичный код     */
   }  
}
Программа 2. Создаём лотерею. Человек не знает, что несколько конкретных чисел выигрышные, и пробует ввести их наугад от 0 до 100. Мы сообщаем о выигрыше, если введенное число равно 4, 10, 40 или 89.
// сначала стандартная шапка
package javaapplicationB; 
import java.util.Scanner;
public class JavaApplicationB {
    public static void main(String[] args) {
// Задаем вопрос:
	System.out.println ("Поучаствуйте в лотерее!");
	System.out.println ("Введите целое число от 0 до 100");
        
// Заводим x для хранения ответа и myscan, чтобы считать ответ
	int     x   =  0;       
	Scanner myscan = new Scanner (System.in);
        
// Икс приобретает значение функции nextInt ()
// nextInt возвращает число, введенное с клавиатуры
	x = myscan.nextInt ();

// Если х  меньше 0 ИЛИ x больше 100, то завершаем программу
	if (x < 0 || x > 100) {
		System.out.println ("Вы ввели число вне заданных границ!");
        } else if (x == 4) {      // иначе если x == 4, это Главный Приз
            	System.out.println ("Да, ДЖЭКПОТ, вы выиграли ГЛАВНЫЙ ПРИЗ 1000000 $!.. ");
	} else if (x == 10) 	{      // иначе если x == 10, это просто приз
            	System.out.println ("Вам повезло! 100 рублей ваши!");
        } else if (x == 40) 	{     // иначе если x == 40, это просто приз
		System.out.println ("В этот раз мы дадим вам 10 рублей!");
        } else if (x == 89) 	{
		System.out.println ("Ваш приз 1000 рублей!.. ");	
       	} else {
		System.out.println (“Попробуйте ещё в другой раз..”);
       	}
/* так можно спрашивать и получать ответ и дальше, если повторять аналогичный код     */
    }  
}

Задача. Теперь напишите программу сами. На этот раз предлагаем вам написать калькулятор. Помните, что в предыдущей теме мы подробно разобрали, как вводить одиночные символ.

Техническое задание.
Ввести первое число.
Ввести обозначение арифметической операции, которую нужно выполнить, - это могут быть знаки +,-,*,/
Ввести второе число.
Выполнить введенную операцию над двумя этими числами, результат сохранить в переменную и распечатать.
Ввести следующую операцию и следующее число.
Выполнить новую операцию над результатом предыдущей и новым числом. Результат сохранить в переменную и распечатать.

Например, при вводе
10
+
20
распечатается 30, и можно будет ещё ввести
*
2
распечатается 60.
/* так и работает обычный калькулятор. Мы скоро пройдем циклы, и сможем выполнить, сколько угодно таких операций, не увеличивая объём кода */
Решайте больше задач по этому разделу здесь.
В следующей теме расскажем как вводить с клавиатуры строки String