Ласкаво просимо, молоді учні! Сьогодні ми дізнаємось про керуючі структури в комп’ютерному програмуванні. Керуючі структури схожі на дорожні знаки для комп’ютерної програми. Вони підказують йому, яким шляхом йти і що робити далі. Подібно до того, як ви дотримуєтеся правил удома чи в школі, комп’ютер дотримується керуючих структур під час виконання програми.
Керуюча структура — це набір інструкцій, які вказують комп’ютеру, як вибирати між різними кроками під час виконання програми. Він вирішує, чи повинен комп’ютер продовжувати працювати в тому ж порядку, чи прийняти рішення зробити щось інше.
Уявіть, що ви виконуєте рецепт. У рецепті описано кожен крок: спочатку змішайте борошно та воду; потім додайте яйце; далі перемішайте; і, нарешті, випікайте суміш. У комп’ютері керуючі структури працюють подібним чином. Вони допомагають комп’ютеру знати, яка інструкція буде наступною та яке рішення прийняти, коли є вибір.
Існує три основних типи структур управління, про які ви сьогодні дізнаєтесь. Це:
Структури послідовного керування вказують комп’ютеру виконувати інструкції одну за одною у фіксованому порядку. У послідовному контролі немає прийняття рішень. Кожен крок відбувається поспіль, як коли ви виконуєте простий набір вказівок.
Наприклад, подумайте про свій ранковий розпорядок дня:
Кожна діяльність відбувається одна за одною в чіткому порядку. У програмуванні це називається послідовним виконанням . Комп'ютер читає першу інструкцію, потім другу, а потім третю.
Якщо ми подумаємо про просту псевдопрограму для приготування сендвіча, вона може виглядати так:
Крок 1: Візьміть дві скибочки хліба.
Крок 2: Намажте вершковим маслом один шматочок.
Крок 3: Покладіть сир на вершкове масло.
Крок 4: З’єднайте дві частини. Насолоджуйтесь бутербродом!
Подібно до сендвіча, який ви робите, комп’ютер виконує інструкції одну за одною.
Структури керування вибором дозволяють комп’ютеру робити вибір. Вони працюють як розвилка доріг або книга «Вибери свою пригоду». Комп’ютер розглядає умову чи правило, а потім вирішує, яким шляхом слідувати.
Наприклад, подумайте про те, що одягнути вранці. Ви можете вирішити: «Якщо буде дощ, я одягну плащ, якщо буде сонячно, я одягну футболку». Це рішення, яке допоможе вам бути готовим до погоди. У програмуванні комп’ютер використовує оператори if , else if та else для прийняття рішень.
Простий приклад коду простою мовою виглядає так:
Якщо йде дощ, то надрукуйте «Візьміть парасольку».
В іншому випадку надрукуйте «Парасолька не потрібна».
Це означає: якщо умова (дощ) вірна, то виконайте дію (беріть парасольку). В іншому випадку виконайте іншу дію.
Скористаємося іншим прикладом. Уявіть, що ви граєте в гру, і є правило, яке говорить: «Якщо ви наберете 10 очок, ви виграєте!» Це правило схоже на структуру контролю вибору. Гра перевіряє, чи дорівнюють ваші бали 10. Якщо так, вона оголошує вас переможцем. Якщо ні, він продовжує грати.
Структури вибору допомагають комп’ютерам приймати рішення, які мають лише кілька можливих відповідей. Вони кажуть комп’ютеру: «Зроби це, якщо це правда, а якщо ні, зроби щось інше».
Структури контролю ітерацій наказують комп’ютеру робити щось знову і знову. Це відомо як цикл або повторення дій. Коли вам потрібно повторити завдання багато разів, використовується ітерація.
Подумайте, коли ви рахуєте кількість яблук у кошику. Ви можете порахувати: 1, 2, 3, 4, 5 і так далі. Ви починаєте з одного числа і продовжуєте рахувати, поки не дійдете до кінця. Це схоже на те, як комп’ютер використовує цикли.
Існує два поширених типи циклів у програмуванні:
Цикл for використовується, коли ви знаєте, скільки разів ви хочете повторити щось. Наприклад, якщо ви хочете заспівати той самий рядок пісні 5 разів, ви можете використати цикл for:
Для (порахуйте від 1 до 5) проспівайте рядок: "Happy Birthday!"
Комп'ютер покаже "З днем народження!" п’ять разів, оскільки крок повторюється 5 разів.
Цикл while використовується, коли комп’ютер повинен повторювати щось, доки виконується умова. Наприклад, якщо ви надуваєте повітряну кульку, ви можете продовжувати надувати, доки кулька не стане достатньо великою. Правило може бути таким: «Поки кулька невелика, продовжуйте вдувати в неї повітря».
Це схоже на те, щоб сказати: поки (повітряна куля маленька), продовжуй дути. Коли повітряна кулька стане достатньо великою, зупиніть петлю.
Ось ще один простий приклад використання ідеї петлі: уявіть, що ви любите плескати в долоні. Ви вирішуєте плескати в долоні, поки не плеснете 10 разів. Ви можете сказати: повторіть «хлоп» 10 разів. У програмі комп’ютер рахуватиме кожен удар і зупинятиметься, коли досягне 10 ударів.
Керуючі структури дуже важливі в програмуванні. Вони допомагають організувати завдання в програмі, щоб вона працювала правильно. Без них комп’ютер не знав би, як приймати рішення чи повторювати дії.
Ось кілька причин, чому структури контролю є ключовими:
Давайте розглянемо деякі приклади з повсякденного життя, які відображають структури управління в програмуванні.
Приклад послідовного керування:
Уявіть, що ви готуєтеся до школи. По-перше, ти прокидаєшся. Потім вимийте обличчя. Далі ви надягаєте свій одяг. Нарешті ви снідаєте. Це послідовність дій, які ви виконуєте одна за одною. У комп’ютерному програмуванні використовується послідовне керування, коли кожна інструкція виконується без умов.
Приклад керування вибором:
Зважте на рішення, яке ви приймаєте, вибираючи одяг. Якщо погода холодна, ви одягаєте теплий светр. Якщо погода спекотна, ви одягаєте футболку. Цей процес прийняття рішень схожий на те, як комп’ютер використовує оператор «якщо». Комп’ютер перевіряє погоду (стан), а потім підбирає правильний варіант одягу (акція).
Приклад контролю ітерації:
Уявіть, що ви виконуєте роботу, наприклад, прибираєте свої іграшки. Можливо, вам доведеться зібрати багато іграшок. Замість того, щоб думати про кожну іграшку одну за одною, ви просто повторюєте ту саму дію: візьміть іграшку, покладіть її в ящик для іграшок і переходьте до наступної іграшки, доки не підберете всі. Це повторювана дія, як і цикл у програмуванні.
Іноді керуючі структури можуть розміщуватися одна в одній. Це називається вкладеною керуючою структурою . Це трапляється, коли одне рішення або цикл знаходиться всередині іншого. Уявіть гру, у якій ви робите вибір у кілька кроків. Наприклад, ви можете спочатку вирішити, йти ліворуч чи праворуч. Якщо ви виберете ліворуч, ви можете зіткнутися з іншим вибором: «Ви піднімаєтесь на пагорб чи обходите його?» Кожен вибір – це невелике рішення, і вони вкладені один за одним.
У кодуванні вкладення дозволяє комп’ютеру виконувати більш складні завдання. Навіть проста гра чи програма може мати кілька рівнів рішень і циклів. Коли ці рівні працюють разом, програма може приймати розумніші рішення та робити більш захоплюючі речі.
Наприклад, уявіть програму, яка допоможе вам спланувати пікнік. Спочатку він може запитати: "Чи хороша погода?" Якщо відповідь ствердна, програма запитає: «Чи достатньо їжі?» Якщо ви знову відповісте «так», з’явиться повідомлення «Чудово! Час йти на пікнік!» Якщо будь-яка відповідь негативна, буде запропоновано інший план. Це вкладене прийняття рішень допомагає комп’ютеру краще зрозуміти ваш вибір.
Коли комп’ютерна програма виконується, вона виконує вказівки, які ви надали в певному порядку. Давайте згадаємо просту програму, яка показує привітання на екрані комп'ютера. Програма може робити наступне:
Крок 1: Запустіть програму.
Крок 2. Перевірте час доби.
Крок 3. Якщо час вранці, покажіть «Доброго ранку!»
Крок 4. Якщо час після обіду, покажіть «Доброго дня!»
Крок 5: Якщо час вечірній, покажіть «Добрий вечір!»
Крок 6: завершіть програму.
У цій програмі є чітка послідовність. Також є рішення про те, що показувати на екрані. Щоб прийняти це рішення, комп’ютер використовує керуючу структуру вибору (оператори if-else ).
Далі уявіть, що ви граєте в просту комп’ютерну гру, де вам потрібно збирати монети. Програма може використовувати цикл для перевірки кожного разу, коли ви збираєте одну монету. Він буде рахувати ваші монети, коли ви їх збираєте. Коли ви зберете всі монети, гра закінчується. Тут цикл є структурою керування ітерацією, яка повторює процес підрахунку.
Керуючі структури використовуються не тільки в шкільних вправах або невеликих програмах. Вони використовуються в багатьох реальних програмах, які ми бачимо щодня. Ось кілька цікавих прикладів:
Ці приклади показують, що керуючі структури є всюди! Вони допомагають сучасним пристроям і програмам працювати максимально злагоджено, роблячи наше життя легшим і веселішим.
Давайте напишемо простий приклад псевдокоду. Псевдокод — це спосіб планування програм за допомогою простих слів, схожих на код.
Приклад: простий засіб прийняття рішень щодо закусок
Уявіть, що ви хочете вирішити, перекусити яблуком чи бананом. Ви можете записати правила так:
Якщо ви голодні і хочете чогось солодкого, то вибирайте яблуко.
Інакше, якщо ви голодні і хочете чогось м'якого, то вибирайте банан.
Інакше сиди і думай про те, що хочеш.
Цей псевдокод повідомляє комп’ютеру: спочатку перевірте, чи хочете ви чогось солодкого. Якщо це правда, зірвіть яблуко. Якщо ні, перевірте, чи є щось інше, наприклад банан. Якщо жоден із варіантів не збігається, знайдіть хвилинку, щоб прийняти рішення.
Це може допомогти подумати про структури управління як про карту. Зобразіть просту карту скарбів. На карті є позначений шлях із кроками, написаними по порядку. Коли ви дійдете до розвилки доріг, карта підкаже вам, у якому напрямку йти, на основі підказки зі скарбу. Іноді на карті пропонується кілька разів пройти тим самим шляхом, доки ви не досягнете скарбу. Усі ці інструкції допоможуть вам знайти правильний шлях.
Подібним чином комп’ютер використовує послідовні кроки, щоб слідувати карті, вибір, щоб вибрати правильний шлях на розвилці, і ітерацію, щоб повторити завдання, доки не буде досягнуто мети. Використовуючи керуючі структури, ми можемо сказати комп’ютеру, як саме дістатися до свого «скарбу» – правильного результату.
Давайте повторимо важливі ідеї, які ми дізналися сьогодні: