Основные арифметические операторы: сложение (+
), вычитание (-
), умножение (*
), деление (/
), остаток от деления нацело (%
).
Можно использовать сокращенную форму записи операторов:
a += b; // a = a + b a -= b; // a = a - b a *= b; // a = a * b a /= b; // a = a / b a %= b; // a = a % b
Оператор инкремента записывается в виде ++
и означает «увеличить на единицу». Оператор декремента записывается в виде --
и означает «уменьшить на единицу». Для каждого из операторов есть две версии: префиксная и постфиксная.
++a; // префиксная версия оператора инкремента a++; // постфиксная версия оператора инкремента
В префиксном варианте сначала выполняется операция, а затем выдается значение. В постфиксном варианте сначала выдается значение, и лишь затем выполняется операция.
int a = 0; System.out.println("1. a = " + ++a); // напечатается: 1. a = 1 System.out.println("2. a = " + a++); // напечатается: 2. a = 1
Операторы сравнения: меньше (<
), больше (>
), меньше или равно (<=
), больше или равно (>=
), равно (==
), не равно (!=
). ==
и !=
применимы для всех примитивных типов данных, остальные не применимы к типу boolean
.
Основные логические операторы: &&
(конъюнкция, AND), ||
(дизъюнкция, OR), !
(отрицание, NOT). Логические операторы применимы только к значениям типа boolean
.
С клавиатуры вводится четыре натуральных числа: d
(номер дня), m
(номер месяца), y
(номер года) и n
. Напечатайте в консоли дату, которая наступит через n
дней после даты d.m.y
.
Пример: Ввели следующие 4 числа: 2, 1, 2012, 58. Через 58 дней после 2 января 2012 года наступает 29 февраля 2012 года, поэтому в консоли должна быть напечатана следующая дата: 29.02.2012
.
Замечание: Год с номером y
является високосным, если либо y
кратно 4, но не кратно 100; либо y
кратно 400. Например, 2000 – високосный год, а 2100, 2200 и 2300 – не високосные годы.