WEBVTT 00:00:01.740 --> 00:00:03.810 Отже, ми вже створили класну змінну 00:00:03.810 --> 00:00:06.480 для очей Вінстона, яка виявилася дуже корисною, 00:00:06.480 --> 00:00:08.916 тому що тепер вам не потрібно вводити багато символів для того, 00:00:08.916 --> 00:00:10.500 щоб змінити розмір очей Вінстона. 00:00:10.500 --> 00:00:13.393 Пам’ятаєте, до цього потрібно було написати одне й те ж саме число 00:00:13.393 --> 00:00:15.966 чотири рази, щоб змінити розмір його очей. 00:00:15.966 --> 00:00:17.809 Але чи можемо ми використати змінні для того, щоб замінити числа, 00:00:17.809 --> 00:00:19.212 коли вони не всі однакові? 00:00:19.212 --> 00:00:21.716 Якщо я, наприклад, захочу здвинути Вінстона трохи вище? 00:00:21.716 --> 00:00:23.763 Я можу змінити кожну х-координату, 00:00:23.763 --> 00:00:25.568 але так чи інакше вони не однакові, 00:00:25.568 --> 00:00:27.933 тобто я не можу їх всіх замінити якоюсь змінною. 00:00:27.933 --> 00:00:29.139 Але почекайте! 00:00:29.139 --> 00:00:31.825 Після того, як я присвоїла змінній число, я можу використовувати цю змінну 00:00:31.825 --> 00:00:33.943 так само, якби це було число, 00:00:33.943 --> 00:00:37.073 це означає я можу використовувати змінні та математичні вирази. 00:00:37.073 --> 00:00:39.056 Отож, в нашому випадку: створімо змінну 00:00:39.056 --> 00:00:41.039 для х-положення Вінстона. 00:00:41.039 --> 00:00:43.024 Назвемо її var x. 00:00:43.024 --> 00:00:45.485 Достатньо просто. Окей, тепер присвоймо їй 00:00:45.485 --> 00:00:48.036 значення х-координати обличчя Вінстона. 00:00:48.036 --> 00:00:51.339 Його обличчя намальоване на х-координаті 200. 00:00:51.339 --> 00:00:54.423 Отож, ми можемо сказати, що var x означає 200. 00:00:55.053 --> 00:00:59.018 Тепер я можу замінити це число новою змінною Х, 00:00:59.018 --> 00:01:02.480 і коли я змінююю значення Х, обличчя Вінстона зміщується, 00:01:02.480 --> 00:01:04.292 але не його очі чи рот. 00:01:04.982 --> 00:01:08.038 Отож, для того щоб зафіксувати їх, ми визначимо 00:01:08.038 --> 00:01:10.415 розташування очей та рота 00:01:10.415 --> 00:01:14.082 відносно до розташування обличчя. 00:01:14.082 --> 00:01:16.752 Х-координати це центри 00:01:16.752 --> 00:01:20.462 всіх інших еліпсів, у обличчя це 200, 00:01:20.462 --> 00:01:24.596 тепер перейдімо спершу до лівого ока. 00:01:24.596 --> 00:01:26.472 Отож, цей еліпс це ліве око, і ми бачимо, 00:01:26.472 --> 00:01:29.608 що воно намалюване на 150. 00:01:29.608 --> 00:01:33.075 Прямо ось тут, це 150, 00:01:33.075 --> 00:01:37.552 а 150 - це на 50 менше, ніж 200. 00:01:37.552 --> 00:01:42.360 Отож, ліве око повинно бути там, де обличчя, але мінус 50. 00:01:42.360 --> 00:01:47.660 Це буде Х, розташування обличчя, - 50. 00:01:48.020 --> 00:01:50.082 І тепер, якщо я зміню значення х-координати, 00:01:50.082 --> 00:01:53.254 його око буде рухатися разом з обличчям. 00:01:53.254 --> 00:01:54.616 Перейдемо до наступного ока. 00:01:54.616 --> 00:01:57.498 Праве око намальоване на 300, 00:01:57.498 --> 00:02:01.470 Ось тут, це 300. 00:02:01.470 --> 00:02:05.754 А 300 - це на 100 більше, ніж 200. 00:02:05.754 --> 00:02:09.902 Отож, його праве око повинне бути там де і обличчя, але плюс 100. 00:02:09.902 --> 00:02:12.535 Це буде x + 100. 00:02:12.535 --> 00:02:14.181 Тепер перейдімо до рота. 00:02:14.181 --> 00:02:16.857 Рот намалюваний на 250. 00:02:16.857 --> 00:02:19.396 250, це ось тут, 00:02:19.396 --> 00:02:22.895 і 250 це 200 плюс 50. 00:02:22.895 --> 00:02:26.054 Отож, де б не було обличчя - ой, це 5 - 00:02:26.054 --> 00:02:30.983 де б не було обличчя, Х+50. 00:02:30.983 --> 00:02:33.347 І тепер - треба позбутися від цих каракулей - 00:02:33.347 --> 00:02:38.253 всякий раз, коли я змінюю значення Х, рухається все обличчя. 00:02:38.253 --> 00:02:39.579 Єєєєй! 00:02:39.579 --> 00:02:42.792 Також Вам слід дізнатися ще дещо про змінні. 00:02:42.792 --> 00:02:45.558 Після того, як ви створили змінну за допомогою Var х, 00:02:45.558 --> 00:02:48.395 Ви можете присвоювати їй значення стільки разів, скільки ви хочете. 00:02:48.395 --> 00:02:51.504 Так, якщо надати Х значення 198, 00:02:51.504 --> 00:02:54.947 Так само я можу присвоїти Х 300, 00:02:54.947 --> 00:02:59.240 або 150. 00:02:59.240 --> 00:03:01.216 І з тих пір комп'ютер буде вважати Х 00:03:01.216 --> 00:03:03.432 за те значення, що ми в останнє зазначили. 00:03:03.432 --> 00:03:05.419 Отож, в нашому випадку, 150. 00:03:05.419 --> 00:03:08.235 Але для змінної ви повинні тільки написати var. 00:03:08.235 --> 00:03:12.510 Якщо, ось тут, я замість цього напишу var = 150, 00:03:12.510 --> 00:03:15.825 буде створена абсолютно нова змінна Х, 00:03:15.825 --> 00:03:18.394 яка в процесі знищить стару змінну Х, 00:03:18.394 --> 00:03:21.563 і всі наші змінні в результаті зникнуть, опиняться в смітнику. 00:03:21.563 --> 00:03:24.615 Врешті-решт комп’ютер буде використовувати тільки нову змінну. 00:03:24.615 --> 00:03:28.127 Іноді Ви можете так зробити і не станеться нічого страшного, 00:03:28.127 --> 00:03:29.851 але я б Вам цього не радила робити. 00:03:29.851 --> 00:03:33.208 Зараз я тільки один раз напишу, що var x = 150. 00:03:33.208 --> 00:03:37.186 І тепер весь Вінстон дуже зручно переміщується по екрану. 00:03:37.186 --> 00:03:40.254 Зараз я розкажу Вам ще дещо. 00:03:40.254 --> 00:03:44.592 Всякий раз, коли у Вас є змінна, що дорівнює чомусь, 00:03:44.592 --> 00:03:47.450 ця змінна в гарному, безпечному положенні. 00:03:47.450 --> 00:03:50.691 Насправді, зліва від знака рівності, це єдине місце, 00:03:50.691 --> 00:03:53.532 де змінна може відчути себе сама по собі, 00:03:53.532 --> 00:03:55.540 тому що це єдине місце, де комп’ютер 00:03:55.540 --> 00:03:57.348 буде розглядати її як змінну. 00:03:57.348 --> 00:04:00.037 У будь-якому іншому місці, комп'ютер просто подумає, що це значення. 00:04:00.037 --> 00:04:02.384 Отож якщо ми навіть робимо щось накшталт цього: 00:04:02.384 --> 00:04:06.041 var x = 10 00:04:06.041 --> 00:04:10.504 а х = х. 00:04:10.504 --> 00:04:11.727 Оу, щось дивне. 00:04:11.727 --> 00:04:14.572 По лівій стороні ми маємо Х, 00:04:14.572 --> 00:04:17.497 яке є вільною та незалежною змінною; 00:04:17.497 --> 00:04:20.372 такою, що може рости та змінюватись! 00:04:20.372 --> 00:04:24.997 Але справа, це тільки, так, це тільки 10. 00:04:24.997 --> 00:04:27.163 Виходить не дуже! Але це означає, 00:04:27.163 --> 00:04:28.939 що ми можемо робити деякі дуже зручні штуки: 00:04:28.939 --> 00:04:33.535 я можу сказати x = x + 1 00:04:33.535 --> 00:04:37.019 Отож зліва ми маємо нашу змінну в безпечному становищі, 00:04:37.019 --> 00:04:40.412 а зправа ця змінна, 00:04:40.412 --> 00:04:42.674 як ми знаємо, є лише числом, 00:04:42.674 --> 00:04:44.206 і це просто 10. 00:04:44.206 --> 00:04:47.199 Отож ми можемо подумки замінити це на х = 10 плюс 1, 00:04:47.199 --> 00:04:51.064 що означає просто 11. 00:04:51.064 --> 00:04:54.319 Весь цей рядок, по суті, просто говорить, що х означає 11, 00:04:54.319 --> 00:04:57.574 і з цього часу х приймає значення 11. 00:04:57.574 --> 00:05:01.201 Давайте подивимося що буде, якщо ми поставимо нову змінну в рівняння. 00:05:01.201 --> 00:05:06.448 Нехай var x = 10, 00:05:06.448 --> 00:05:10.473 var y = 20, 00:05:10.473 --> 00:05:12.154 х = у , 00:05:13.835 --> 00:05:17.107 та у = 7. 00:05:17.111 --> 00:05:18.706 Окей, і тепер я хочу дізнатися, 00:05:18.706 --> 00:05:22.103 яке значення х? 00:05:22.103 --> 00:05:23.531 Давайте з’ясуємо це. 00:05:23.531 --> 00:05:27.176 Отож, в цьому рядку, ми створили нову змінну х, 00:05:27.176 --> 00:05:29.171 і присвоїли їй значення 10. 00:05:29.171 --> 00:05:31.777 Тобто значення х це 10. 00:05:31.777 --> 00:05:33.799 У цьому рядку, ми створили нову змінну у, 00:05:33.799 --> 00:05:35.751 і дали їй значення 20. 00:05:35.751 --> 00:05:37.043 Ми нічого не робили з х, 00:05:37.043 --> 00:05:39.345 тож значення х до сих пір 10. 00:05:39.345 --> 00:05:41.986 Ось тут, ми сказали, що х = у. 00:05:41.986 --> 00:05:44.407 Окей, це трохи збиває з пантелику, але якщо задуматися, 00:05:44.407 --> 00:05:46.210 то ми знаємо, що тільки одна з цих змінних 00:05:46.210 --> 00:05:48.453 в безщпечному становищі, 00:05:48.453 --> 00:05:50.378 а інша змінна розглядається 00:05:50.378 --> 00:05:53.747 так, неначе це число. 00:05:53.747 --> 00:05:55.689 Таким чином, ось тут, ми подумки заміняємо 00:05:55.689 --> 00:05:57.791 цей у на його значення, 20, 00:05:57.791 --> 00:06:01.765 і виходить, що цей рядок насправді означає x = 20. 00:06:01.772 --> 00:06:05.029 Отож значення х тут - це 20. 00:06:05.029 --> 00:06:08.825 А ось тут, ми маємо тепер у в безпечному становищі, 00:06:08.825 --> 00:06:10.421 але це не так збиває з пантелику, 00:06:10.421 --> 00:06:12.698 тому що з іншого боку просто число. 00:06:12.698 --> 00:06:17.424 Таким чином, виникає велике питання: коли я змінюю значення у тут, 00:06:17.424 --> 00:06:20.780 чи змінює це значення х ось тут? 00:06:20.780 --> 00:06:26.048 І відповідь: НІ! НІ! НІ! НІ! НІ! 00:06:26.048 --> 00:06:28.784 Ви маєте запам’ятати, ось тут, 00:06:28.784 --> 00:06:31.760 у розглядається просто як число. 00:06:31.760 --> 00:06:34.618 Комп'ютери повністю ігнорують, що це змінна, 00:06:34.618 --> 00:06:36.270 і забувають, що вона може змінюватися. 00:06:36.270 --> 00:06:38.773 це сприймається наступним чином: 00:06:38.773 --> 00:06:42.376 " О, у? Насправді Ви маєте на увазі 20". 00:06:42.376 --> 00:06:44.741 Отож саме тут, ми присвоюємо до х число, 00:06:44.741 --> 00:06:46.625 а не змінну. 00:06:46.625 --> 00:06:50.249 Ми присвоюємо значення У, 20, 00:06:50.249 --> 00:06:54.034 і це означає що значення Х стає 20, 00:06:54.034 --> 00:06:58.369 навіть якщо ми змінимо значення цієї змінної У у останньому рядку. 00:06:59.929 --> 00:07:01.670 Уф! Зрозуміло? 00:07:01.670 --> 00:07:05.229 Окей, тепер ви справжні експерти в змінних. 00:07:05.229 --> 00:07:07.299 Мої вітання! 00:07:07.404 --> 00:07:11.614 Переклад на українську мову: Анна Клець, рев'юер: Юлія Білаш, Благодійний фонд "MagneticOne/org"