JavaRush /Курси /Java Syntax Zero /Операції над змінними типу int

Операції над змінними типу int

Java Syntax Zero
Рівень 2 , Лекція 4
Відкрита

1. Обчислення цілочислових виразів

У правій частині від оператора присвоєння (знака дорівнює) може бути будь-який вираз — комбінація чисел, змінних і знаків +, -, *, /.

Також можна використовувати дужки ( ). У Java, як і в математиці, спершу обчислюються вирази всередині дужок, а потім — зовні.

Множення та ділення мають однаковий пріоритет, і він вищий, ніж у додавання та віднімання.

Приклади:

Команда Примітка
int a = (2 + 2) * 2;
У змінній буде значення 8
int b = (6 - 3) / (9 - 6);
У змінній буде значення 1
int c = (-2) * (-3);
У змінній буде значення 6
int d = 3 / 0;
Під час виконання цієї команди виникне помилка «ділення на нуль», і програма завершиться.

Також у виразі можуть брати участь змінні:

Команда Примітка
int a = 1;
int b = 2;
int c = a * b + 2;
У змінній a буде значення 1
У змінній b буде значення 2
У змінній c буде значення 4

Більше того, одна і та сама змінна може одночасно бути зліва і справа від оператора присвоєння:

Команда Примітка
int x = 5;
x = x + 1;
x = x + 1;
x = x + 1;
x = x + 1;
x = x + 1;
У змінній x буде значення 5
У змінній x буде значення 6
У змінній x буде значення 7
У змінній x буде значення 8
У змінній x буде значення 9
У змінній x буде значення 10

Все тому, що в мові Java символ = – це не позначення рівності, а команда, яка в змінну зліва від знака = записує обчислене значення виразу справа від знака =.


2. Ділення цілих чисел

У Java при діленні цілого числа на ціле число завжди виходить ціле число. Залишок від ділення при цьому відкидається. Або ж можна сказати, що відкидається дробова частина.

Приклади:

Команда Результат ділення Примітка
int a = 5 / 2;
2.5 У змінній a буде значення 2
int b = 20 / 3;
6.6667 У змінній b буде значення 6
int c = -6 / 5;
-1.2 У змінній c буде значення -1
int d = 1 / 2;
0.5 У змінній d буде значення 0


3. Залишок від ділення цілих чисел

Окрім додавання, віднімання, множення та ділення для цілих чисел у Java є ще й оператор «залишок від ділення». Використовується для цього символ відсоток – %. Це саме залишок від ділення цілого числа на ціле, а не дробова частина.

Приклади:

Команда Результат ділення Примітка
int a = 5 % 2;
2 і 1 в залишку У змінній a буде значення 1
int b = 20 % 4;
5 і 0 в залишку У змінній b буде значення 0
int c = 9 % 5;
1 і 4 в залишку У змінній c буде значення 4
int d = 1 % 2;
0 і 1 в залишку У змінній d буде значення 1

Це дуже корисний оператор, і використовується він доволі часто. Наприклад, щоб дізнатися, парне число чи ні, достатньо поділити його на 2 і отриманий залишок порівняти з нулем. Якщо залишок від ділення дорівнює нулю, число парне, якщо дорівнює одиниці — непарне.

Виглядає ця перевірка так:

(a % 2) == 0

Де, як ти вже здогадався, a % 2 – отримання залишку від ділення на 2 (тобто 0 чи 1), а == використовується для порівняння з нулем.



4. Інкремент і декремент

У програмуванні дуже часто доводиться збільшувати або зменшувати змінну на одиницю. Для цих дій у Java є спеціальні команди:

Оператор інкремент (збільшення на одиницю) виглядає так:

a++;
Збільшення на одиницю

Ця команда робить те саме, що й команда a = a + 1; – збільшує змінну a на одиницю.

Оператор декремент (зменшення на одиницю) виглядає так:

a--;
Зменшення на одиницю

Ця команда робить те саме, що й команда a = a - 1; – зменшує змінну a на одиницю.

Приклади

Команда Примітка
int x = 5;
x++;
x++;
x++;
x++;
x++;
У змінній x буде значення 5
У змінній x буде значення 6
У змінній x буде значення 7
У змінній x буде значення 8
У змінній x буде значення 9
У змінній x буде значення 10
int x = 5;
x--;
x--;
x--;
x--;
x--;
x--;
У змінній x буде значення 5
У змінній x буде значення 4
У змінній x буде значення 3
У змінній x буде значення 2
У змінній x буде значення 1
У змінній x буде значення 0
У змінній x буде значення -1

Коментарі (27)
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ
Initiative Horror Рівень 4
16 травня 2024
Все дуже цікаво, але - перепрошую - де ж безкоштовні задачі? У мене немає змоги робити передплату (я особа, що втратила житло унаслідок агресії), то що ж мені робити? Облишити навіть мріяти?
Dmytro Рівень 26
27 травня 2024
в приложении задачи бесплатны
Олексій Рівень 1 Expert
22 березня 2023
Дуже цікавий і насичений матеріал. Я довго думав, чому 1 % 2 = 1 ? Адже 1 : 2 = 0, 5. Тому, на першій погляд, відповідь мала б бути 5. Але потмі зрозумів, що тут інша логіка. Всього чисел, які діляться на 2, взагалі немає (=0). А те, що залишилось окрім цих чисел (окрім нуля) - це і буде остача. А залишилась одиниця.
Oksana V. Рівень 4
1 липня 2024
Дякую за коментар 👍 Так, остача, це не є операція ділення, тобто не треба в калькуляторі ділити 1 на 2. Натомість, у нас, наприклад, є 1 цукерка, яку треба розділити між дітьми по 2 штуки кожному (1 % 2), але ми не можемо це зробити, бо цукерка всього одна, тому вийде 0 (ніхто не отримає). І в результаті, в остачі залишилася 1 цукерка, яку ніхто з дітей не отримав 😉 (0 і 1 в остачі) Або ще приклад, у нас є 9 цукерок (🍬🍬🍬🍬🍬) (🍬🍬🍬🍬) , які треба розділити між дітьми по 5 штук кожному (9 % 5). Ми даємо одній дитині 5 цукерок 🍬🍬🍬🍬🍬, і у нас залишається 4 цукерки 🍬🍬🍬🍬, але цього вже недостатньо для наступної дитини. Тому виходить 1 (бо одна дитина отримала) і 4 цукерки залишилися (остача). (1 і 4 в остачі)
Василь Рівень 4
20 листопада 2022
ще інкремент і декремент може бути таким:

++a;
--b;
різницю можна почитати тут: різниця між ++а і а++
hidden #3179197 Рівень 4
23 жовтня 2022
Чому коли ділиш 9 % 5 виходить 1 і 4, я нерозумію звідки беруться числа 1 і 4? я розумію, що 5 % 2 то виходить 2,5 тобто 2 і 0,5 це зводиться до 1 і 20 % 4 виходить 5 і 0 але звідки береться 1 і 4
Anonymous #3204968 Рівень 14
9 листопада 2022
бро, бо у девʼятці лише 1 ціла пʼятірка. а 4 - це залишок від того ділення. 9 = 5 + 4;
Hodomych Рівень 7
18 вересня 2022
А є коротший спосіб з дерементом? "toothCounter--; toothCounter--; toothCounter--; toothCounter--; toothCounter--; toothCounter--; toothCounter--; toothCounter--; toothCounter--;"
Lazarenko Dmytro Рівень 30
28 жовтня 2022
toothCounter -= 9;
Stas Semenyuk_ЗСУ Рівень 18
3 січня 2025
можна ще,наприклвд, через цикл. але так нн приймає за правильне рішення.
IvanPozdniakov Рівень 13
25 липня 2022
Сподіваюсь і далі буде так дохідливо все пояснено. Всім успіхів!
Roma Chernesh Рівень 16
12 жовтня 2022
for (int i = 0; i < 9; i++) { toothCounter--; } Але вже задачу було мною розв'язано, тому не впевнений, що таку відповідь зарахують.
Марк Рівень 8
30 січня 2023
колись на JR було завдання 10 разів вивести текст на екран. я заморочився із циклом. два дні чехлив як його правильно написати (тут його ще не викладали). написав програму і... Відповідь прийняли як невірну! потрібно було вручну 10 разів виводити той текст
Roma Chernesh Рівень 16
30 січня 2023
а... пам'ятаю це завдання. Воно доси є далі на курсі. ностальджи:)
8 жовтня 2023
Просто є чіткі вимоги, не треба вигадувати велосипед)
Anonymous #3009611 Рівень 2
18 лютого 2022
Досить цікаво😀
Александр Рівень 2
8 лютого 2022
Досить цікавий матеріал і поки що все йде легко і невимушено
Anonymous #2979179 Рівень 13
27 січня 2022
повезло что я вчил ето и ненуждаюсь в задачах тай щей они платние мда хотьби ограничение там вдень 1 задача поставилиб и 1 лекция для халявщиков
Юлия Рівень 6
1 грудня 2021
Не понятна логика остаток от деления целых чисел. Даже после предоставленного решения задачи
1 січня 2022
дивись, піля ділення 546 на 10 у нас виходить 54,6 ( не ціле число), так як int може видавати і бачити лише цілі числа на екран виведе 54, но завдяки символу %, нам виведе замість цілого числа той залишок, що якраз у задачі можна і побачити
27 серпня 2023
Чому саме потрібно ділити на 10? В самій умові про це не говорять. Чи підказка теж являється частиною умови?
Тимур Рівень 3
3 березня 2024
Привет! Это такой способ - в любом многозначном числе дающий последнюю цифру. Я думаю, есть и другие способы, но, здесь авторы просто хотят нас потренировать в использовании %.