Теперь предположим, что текст, который мы вводим на консольное окно, хотим сделать разным, в зависимости от того, сколько мы платим. Платим ли какой-то налог или вообще ничего не платим. Тогда, нам уже надо воспользоваться не просто оператором, а составным оператором, который нужно поместить внутри фигурных скобок. Напишем теперь таким образом. Откроем фигурные скобки. И теперь скопируем оператор println. Щелкнем правой кнопкой мыши, Сору. Вставим сюда. Вновь щелкнем правой кнопкой мыши, Paste.
И теперь напишем таким образом You mast pay. Далее кавычки, и сумма xx. Закрыть скобку. Точка с запятой. Теперь же, если у нас сумма меньше 1000, тогда напишем оператор else, и далее следующую строку, вот в этом случае, который, конечно же, будет с несколько другим текстом. Текст будет такой You mast pay nothing! Ну и, конечно же, xx нам уже писать не нужно. Добавим слово not. Запустим наше приложение и посмотрим, что у нас получилось. Развернем меню Tools, далее Compile Java, далее в меню Tools выберем команду Run Java Application. Введем опять какое-либо число.
Например, 4000, ОК. И как мы видим, в этом случае нам нужно заплатить 420 рублей. Правда, здесь есть еще довольно большой остаток, который определяется ошибками округления. Сейчас закроем наше приложение. Попробуем его запустить и ввести на этот раз число, которое будет меньше 1000. Для этого развернем меню Tools, компилировать нам уже не обязательно и поэтому прямо выберем команду Run Java Application.
Введем число, например, 500, ОК. И как мы видим, нам ничего платить не надо. Закроем приложение. Чуть-чуть еще более усложним нашу задачу, и пускай с суммы, которая больше, например, 5000 рублей нам нужно платить по другой ставке налога. Например, 30% от всех денег, которые больше этих 5000. Поэтому нам опять надо воспользоваться оператором if и на этот раз их нам придется так сказать вкладывать друг в друга. Использовать повторяющиеся операторы if. Поэтому сначала выполним проверку на то, будет ли наше число xx больше 5000, и в этом случае нам нужно будет выполнить какие-либо действия, которые поместим в фигурных скобках.
Если же это число меньше или равно 5000, напишем else, далее пусть выполняется все то, что у нас было ранее. Т.е., если оно больше 1000, но понятно, что меньше 5000, выполняется вот этот блок, а в случае, если это число меньше 1000, то просто-напросто будет выводиться одна, вот эта надпись. Теперь напишем формулу вычисления вот в этом случае. Она у нас будет выглядеть следующим образом. xx = сумма ii-5000, из которой надо заплатить 30%, 0,30. Плюс еще та сумма, которая платится с денег, которые меньше 5000. Она будет высчитываться по следующей формуле. 5000-1000, т. е. это минимальная сумма, которая освобождается от налога, умножить на предыдущую вставку 0,14, Точка с запятой.
Теперь нам эту сумму надо вывести на консольное окно. Для этого просто-напросто скопируем вот эту строчку. Выделим ее. Щелкнем правой кнопкой мыши, Сору. Далее встанем сюда.
Скомпилируем нашу программу, используя команду Compile Java.
Теперь же запустим эту программу, используя соответствующую команду.
Вот опять появилось это вопросительное окно, в которое введем числа, маленькие мы уже вводили, и теперь введем большое число.
Например, 7000, которое явно больше 5000. Щелкнем на кнопке ОК и посмотрим, сколько нам надо заплатить. Оказывается, от 7000, нам надо платить 1160 рублей. Закроем наше консольное окно и вернемся в наш текстовый редактор. Попробуем теперь сделать так, чтобы все эти вычисления проводились не один, а несколько раз. Например, до тех пор, пока в качестве зарплаты мы не введем число 0. Для этого нам надо воспользоваться циклом do while.
Введем здесь новую строку и далее напишем оператор do. Теперь откроем фигурные скобки, внутри которых поместим все вычисления нашей программы. Далее будет закрывающая фигурная скобка. И затем то условие, при котором наш цикл будет выполняться.
Здесь напишем таким образом. while, скобки и условия. Далее напишем ii больше 0, закроем скобку. Точка с запятой. А теперь, если мы в таком виде запустим нашу программу, при компиляции, компилятор выдаст нам ошибку. Дело в том, что у нас переменная ii является локальной, внутри вот этого блока do и соответственно вне этого блока мы ее использовать не можем. Поэтому нам просто-напросто надо вынести определение переменной ii за вот эти скобки. Поэтому определение integer здесь удалим. И снаружи нашего цикла проведем ее инициализацию, int ii, точка с запятой. Теперь еще в начале наших вычислений, сразу после диалогового запроса, распечатаем саму нашу зарплату. Поэтому скопируем оператор println, Сору. Вставим сюда, Paste. Затем напишем "Your salary", плюс и переменная ss. Закроем скобку. Точка с запятой. Теперь скомпилируем наше приложение.
Для этого развернем меню Tools, Compile Java. Запустим программу, активизировав команду Run Java Application и, как мы видим, возник тот же стандартный вопрос, который мы уже ни раз видели. Введем какую-либо зарплату. Например, 444. Щелкнем на кнопке ОК. Как мы видим, в этом случае мы платить ничего не должны. А если наша зарплата составляет 4444, тогда нам надо платить 482 рубля с копейками.
В случае же, если зарплата еще больше 44444, тогда надо заплатить более 12000. А если же мы сейчас введем 0, щелкнем на кнопке ОК, то, как мы видим, при зарплате 0, платить ничего не надо и мы вышли из нашей программы. Закроем теперь наше консольное приложение. И мы вернулись в наш текстовый редактор.
⇐Основные структуры языка (продолжение) - оператор if. синтаксис | TeachPro WEB-дизайн | Операторы цикла do⇒