Для тих, хто ніколи не ...

Ця маленька стаття для тих, хто ніколи не програмував. Хоча таких людей не існує! Адже ви програмуєте свою поведінку з огляду на різні варіанти подальшого ходу подій і змінюєте “програму” у залежності від обставин. Наприклад, якщо ви занедужали, то Ви напевно не підете на роботу (або в школу) і т.п. Вся відмінність життєвої програми від програмування на комп’ютері складається в рівні формалізації порядку дій, які необхідні для досягнення результату. Адже комп’ютер - це машина, вона не зрозуміє вас з півслова, більше того, він узагалі вас не може розуміти! Він тільки виконує закладені в нього інструкції і команди для роботи з двійковими числами.

Для написання більш-менш складної програми необхідно спочатку скласти умовну послідовність дій на папері. Наприклад, “як зварити борщ?”:

Життєвий варіант програми:

Купити на ринку овочів (подешевше), сметани, все почистити, порізати, налити води, поставити на плиту і варити півгодини. Ще не забути посолити.

 

Формалізований варіант (Алгоритм):

  1. Для всіх продавців овочів від першого до останнього
  2. Якщо овочі в даного продавця дешевше, ніж у раніше перевірених, то записати його номер на папірець замість раніше на ньому записаного
  3. Наступний продавець (див. п.2, якщо вони ще залишилися)
  4. Купити овочі в продавця з номером, записаним на папірці
  5. Купити сметану
  6. Виконувати очищення овочів, поки видно шкірку та пошкодження
  7. Збільшуємо шар, що зрізується, на міліметр
  8. Повернення і перевірка умови в п.6
  9. Для всіх куплених овочів від першого до останнього
  10. Розділити плід на 40 частин
  11. Наступний (див. п.10, якщо вони ще залишилися)
  12. Помістити в каструлю. Налити води, включити газ
  13. Таймер включити
  14. Якщо таймер показує, що пройшло півгодини, то газ виключити
  15. Якщо сіль відсутня в готовому продукті, то перейти до обробки помилки по п.16, інакше перейти до п.17
  16. Ввести сіль
  17. Кінець роботи програми

 

Простота написання програм на бейсік полягає в тому, що як команди він використовує англійські слова, які еквівалентні українським із формалізованого варіанта, тобто якщо перекладач, не знайомий з інформатикою, переведе його на англійський, то вийде програма на бейсік. Працювати вона не буде. Закон програмування каже: “Жодна, навіть найпростіша програма, не працює відразу після написання”. Будь-яку програму необхідно налагоджувати (debug (bug-жук) - обезжучувати). На цей рахунок є ще один закон: легше написати свою власну програму, чим розбирати та виправляти чужу. Налагодження програми по відчуттях нагадує проштовхування важкої вантажівки по розмитій дорозі: у хід йдуть одні дошки, камені і лопата, і так доти, поки програма не почне правильно працювати. Якщо говорити мовою алгоритму, то вийде наступне:

  1. Запустити програму
  2. У випадку збою або неправильної роботи знайти причину помилки
  3. Усунути помилку, намагаючись не внести нових
  4. Продовжувати по п.1 доти, поки не будуть усунуті всі помилки