Глава 6 з 27

Безкоштовно

2: Алфавіт і словник програмування

⏱️ 55-70 хвилин
📊 intermediate

Закріпи розділ — картки

Розділ 6: змінні — картки

Інтервальне повторення для цього розділу

Увійдіть, щоб займатися

Увійдіть, щоб займатися

Розділ 6: "Змінні: чарівні коробочки пам'яті"

Професор Біт приніс у кімнату кілька різнокольорових коробок різних розмірів і форм і поставив їх на стіл перед Алісою.

— Сьогодні ми поговоримо про щось дуже важливе в програмуванні — про змінні, — почав Професор. — Уяви, що комп'ютеру потрібно запам'ятовувати інформацію під час роботи програми. Як він це робить?

Аліса задумалась:
— Напевно, записує кудись?

— Вірно! — кивнув Професор. — Комп'ютер зберігає інформацію в спеціальних комірках пам'яті. А щоб програмісту було зручно працювати з цими комірками, винайшли змінні.

Професор взяв синю коробку і написав на ній "вік":
— Змінна — це як коробка з назвою. У неї можна покласти якесь значення і потім використовувати його, звертаючись до імені коробки.

Він поклав у коробку картку з числом 12.

Змінна «вік» — коробка з числом 12

— Дивись, я створив змінну з ім'ям "вік" і присвоїв їй значення 12. У програмуванні це записується так:


вік = 12

— Тобто, змінна — це просто контейнер для зберігання інформації? — запитала Аліса.

— Саме так! — зрадів Професор. — І як у справжні коробки можна класти різні речі, так і в змінні можна записувати різну інформацію.

Мама хочет, чтобы в доме было чисто,
Закатав повыше оба рукава,
В первый ящик собирает только числа,
Во второй — бросает буквы и слова.

Попадаются забавные предметы,
Суть которых сразу точно не поймёшь:
Там, где прячутся вопросы и ответы,
Где меняется то «Истина», то «Ложь».

Третий ящик оставляет пустоватым,
И сама не может вспомнить, для чего.
Но порой нужней, чем слитки и дукаты,
Неизвестность, пустота и «Ничего».

А четвёртый в дикой спешке пропустила,
Увлеклась и отложила все дела.
Ничего туда она не положила
И Значения ему не придала!

Дальше тащит мама ящик нестандартный,
В нём пустых коробок маленьких не счесть.
Разложила кольца, бусинки и карты,
И на каждой подписала, что в ней есть.

А потом, составив стопки аккуратно,
В тот МАССИВНЫЙ ящик хочет положить,
Чтобы всё вокруг смотрелось так опрятно,
И известно было: где и что лежит.

Наступила чистота и оживленье,
Беспорядок окончательно решён.
ПЕРЕМЕННЫЕ приносят наслажденье,
Каждый ящик новым смыслом наделён!

Байт взяв червону коробку і написав на ній "ім'я":
— А в цю коробку можна покласти текст! — Він поклав у коробку картку зі словом "Аліса".

— У програмуванні це виглядає так, — пояснив Професор:


ім'я = "Аліса"

— Лапки показують, що це текст, або, як кажуть програмісти, рядок, — додав він.

— А що ще можна зберігати в змінних? — зацікавилась Аліса.

— Практично все! — Професор почав показувати різні коробки: — Числа, текст, списки, істина або брехня, дати, навіть цілі структури даних.

Байт показує змінну «ім'я» = «Аліса» в червоній коробці

Логік спустилась на стіл:
— У різних мовах програмування змінні можуть поводитись по-різному. У деяких мовах змінна може зберігати тільки певний тип даних — тільки числа або тільки текст. В інших мовах тип змінної може змінюватись.

— А навіщо потрібні змінні? — запитала Аліса. — Чому не можна просто писати значення напряму?

— Відмінне питання! — Професор взяв кілька коробок. — Уяви, що ми пишемо програму для розрахунку вартості поїздки на таксі. Базова вартість — 100 гривень, а кожен кілометр коштує 20 гривень.

Він написав формулу на дошці:


вартість = базовавартість + відстань * ціназа_кілометр

— Якщо ми знаємо, що відстань — 5 кілометрів, то:


вартість = 100 + 5 * 20 = 200 гривень

— Але що, якщо ціна за кілометр зміниться? — продовжив Професор. — Якщо ми використовуємо змінні, нам потрібно змінити тільки одне значення:


базова_вартість = 100
ціназакілометр = 20
відстань = 5
вартість = базовавартість + відстань * ціназа_кілометр

— А якщо б ми записали формулу без змінних:


вартість = 100 + 5 * 20

— то при зміні ціни довелось би переписувати всю формулу, а це сповнене помилок, — закінчив він.

— Зрозуміло! — вигукнула Аліса. — Змінні роблять програму більш гнучкою і зрозумілою!

— Саме так! — підтвердив Професор. — Крім того, змінні дозволяють:

1. Зберігати проміжні результати обчислень
2. Робити код більш читабельним і зрозумілим
3. Економити час і місце, коли одне і те саме значення використовується багаторазово

Байт дістав ще одну коробку і поклав у неї картку з числом 10:
— Дивіться, я створив змінну "х" зі значенням 10. А тепер я можу змінити її значення!

Він вийняв картку і поклав нову з числом 20:
— Тепер х = 20. У цьому головна відмінність змінних від констант — їх значення може змінюватись під час роботи програми.

— У програмуванні це виглядає так, — пояснив Професор:


x = 10 # Спочатку x дорівнює 10
print(x) # Виведе: 10
x = 20 # Тепер x дорівнює 20
print(x) # Виведе: 20

— А що означають ці значки #? — запитала Аліса.

— Це коментарі, — відповів Професор. — Вони допомагають пояснювати код, але комп'ютер їх ігнорує при виконанні програми. Це як нотатки на полях для програмістів.

Логік вказала крилом на формулу з таксі:
— Зверни увагу, як імена змінних описують те, що в них зберігається: "базовавартість", "ціназа_кілометр". Хороші імена змінних роблять код зрозумілішим, як хороші етикетки на коробках допомагають знайти потрібну річ.

— А погані імена? — зацікавилась Аліса.

— Наприклад, a = 100, b = 20, c = 5, d = a + c * b, — сказав Професор. — Технічно код правильний, але зовсім незрозуміло, що означають ці літери.

— Так, так набагато складніше зрозуміти, що відбувається, — погодилась Аліса.

— А тепер, — Професор дістав ще кілька коробок, — давай попрактикуємось у використанні змінних.

Завдання

Уяви, що ти створюєш програму для обліку своїх кишенькових грошей. Які змінні тобі знадобляться? Придумай і запиши 5-7 змінних з відповідними іменами та значеннями. Наприклад:


накопичення = 500
кишеньковігрошіна_тиждень = 100
ціна_морозива = 50

Потім придумай прості формули з цими змінними, наприклад: "Скільки морозива я можу купити на свої накопичення?"