Целые числа и операции (int)

Целые числа появляются почти в каждой задаче: количество, номер, шаг цикла, год, расстояние в метрах и т.п.
В Java для таких значений обычно используется тип int.

Типичная схема: считать целые числа, что‑то посчитать и вывести результат.

int a = 7;
int b = 3;
int sum = a + b;

System.out.println(sum);  // 10

Краткая сводка

Переменная целого типа объявляется так:

int имя = значение;

Примеры:

int x = 0;
int year = 2025;
int count = 10;

Основные операции над int:

  • сложение: +
  • вычитание: -
  • умножение: *
  • целочисленное деление: /
  • остаток от деления: %

Тип int

int хранит целые числа без дробной части.
Для счётчиков, номеров и большинства простых вычислений этого достаточно.

Примеры объявлений:

int apples = 7;
int classmates = 25;
int day = 31;

Основные арифметические операции

Пример:

int a = 7;
int b = 3;

int sum = a + b;      // 10
int diff = a - b;     // 4
int prod = a * b;     // 21
int div = a / b;      // 2
int mod = a % b;      // 1

Комментарии:

  • a / b для int — это деление с отбрасыванием дробной части;
  • a % b — остаток от деления a на b.

Целочисленное деление и остаток

В математике деление даёт дробь: \(7 / 3 \approx 2.333...\).
В int‑делении сохраняется только целая часть:

int a = 7;
int b = 3;

int q = a / b;   // 2
int r = a % b;   // 1

Всегда выполняется связь:

\[ a = (a / b) \cdot b + (a \% b) \]

Пример:

int minutes = 130;

int hours = minutes / 60;   // 2
int rest  = minutes % 60;   // 10

System.out.println(hours + " ч " + rest + " мин");  // 2 ч 10 мин

Скобки и порядок действий

Порядок действий такой же, как в обычной математике:

  1. умножение и деление *, /, %;
  2. сложение и вычитание +, -.

Скобки можно использовать, чтобы явно задать порядок:

int a = 2 + 3 * 4;        // 14
int b = (2 + 3) * 4;      // 20

Лучше лишний раз поставить скобки, чем потом разбираться, почему результат получился неожиданным.


Типичные шаблоны

Сумма и количество

int n = in.nextInt();
int sum = 0;

for (int i = 0; i < n; i++) {
    int x = in.nextInt();
    sum = sum + x;    // или sum += x;
}

System.out.println(sum);

Минимум и максимум

int n = in.nextInt();
int min = Integer.MAX_VALUE;
int max = Integer.MIN_VALUE;

for (int i = 0; i < n; i++) {
    int x = in.nextInt();
    if (x < min) {
        min = x;
    }
    if (x > max) {
        max = x;
    }
}

System.out.println("min = " + min);
System.out.println("max = " + max);

Среднее значение по целым

Если нужно обычное вещественное среднее, хотя бы один операнд должен быть double:

int a = in.nextInt();
int b = in.nextInt();

double avg = (a + b) / 2.0;   // 2.0 — double, результат тоже double

System.out.println(avg);

Проверка делимости

int x = in.nextInt();

boolean divisibleBy3 = (x % 3 == 0);
boolean divisibleBy10 = (x % 10 == 0);

Что нужно запомнить

Целые числа в Java обычно хранят в типе int:

int x = 7;

Деление int / int даёт целую часть, остаток берётся через %.

Скобки в выражениях помогают явно задать порядок вычислений.

Для среднего и других дробных результатов удобно переводить выражение в double (например, делить на 2.0, а не на 2).