У цьому відео я розповім про алгоритм, псевдокод та програму.
Давайте дізнаємося про нього більше.
Перш за все алгоритм.
Що це?
За визначенням алгоритм - це покрокова процедура для вирішення обчислювальної задачі.
Тоді в чому полягає програма.
Програма - це та ж сама покрокова машинна інструкція для вирішення будь-якої проблеми, яка є обчислювальною
задачею, то в чому ж тоді різниця між алгоритмом і програмою.
Розумієте, ми почали писати програми нещодавно, але алгоритми існують століттями. люди розробляли процедури для розв'язання
обчислювальних задач.
Це звичайна практика, якою займаються переважно математики або науковці.
Тому ті, хто працює над якимись проблемами, вивчаючи проблему і знаходячи рішення, вони давали
рішення у вигляді алгоритму.
Це процедура крок за кроком.
Тепер ми хочемо, щоб таку ж процедуру пройшли і наші машини.
Отже, ми пишемо програму.
ГАРАЗД.
Так, саме так.
Це означає, що спочатку ми маємо правильний алгоритм.
Спочатку ми маємо алгоритм, а потім перетворюємо його на програму.
Так, саме так.
Тоді як студент, якщо ти будеш вчитися, чого ти тут навчишся? ви дізнаєтеся, як вирішити проблему.
Це зовсім інше, як правильно вирішити проблему.
Тож чи здатні ви вирішити будь-яку проблему.
Почати вирішувати проблеми непросто.
Спочатку ви вивчаєте кілька процедур, а потім з цього випливає якась нова ідея.
Тоді ви можете почати вирішувати проблему самостійно.
Вам потрібні певні навички, ви повинні розвинути певні навички, аналітичні навички або навички вирішення проблем,
і ви повинні отримати їх здебільшого з різних інших предметів, а також з математики, це не
суто математика, це інші предмети, і це також залежить від вашого рівня IQ.
Як вирішити проблему.
Отже, якщо ви знаєте, як вирішити проблему, ви можете записати її у вигляді алгоритму.
Це так само, як якщо б ви знали, як приготувати страву.
Якщо ви шеф-кухар, то приготуєте рецепт правильно.
Якщо ти хімік, то підготуєш хімічну формулу і проведеш експеримент для хімічної
формули.
Отримання правильного хімічного результату.
Якщо ви музикант, ви будете писати музику, якщо ви математик, ви напишете
алгоритм, тобто процедуру, і все.
Тож для цього потрібні зовсім інші навички.
Тож головне - це знання математики та вміння розв'язувати задачі.
Якщо у вас є алгоритм, то ми хочемо, щоб наша машина виконала цей алгоритм і отримала результат, напишіть його
у вигляді програми.
Тобто перетворення алгоритму в програму.
Ось для чого потрібно знати мову.
Отже, якщо ви знаєте мову програмування, ви можете взяти цю мову і написати
програму.
Перетворіть це в це, тоді як ви пишете, якою мовою ви пишете це?
ми можемо використовувати будь-яку мову.
Англійська як мова або безпосередньо англійська
також може використовуватися тут, але люди використовують формальну нотацію, яка більше схожа на математичну або на програмування,
тому такий тип коду ми називаємо псевдокодом. Так.
Отже, псевдокод не визначений стандартом, все, що ви пишете, є псевдокодом.
Гаразд.
Іноді ми визначаємо, що наша команда буде визначати і слідувати цьому, в іншому випадку, якщо зрозуміло, що цього
достатньо, ви можете писати так, як вам подобається, але ви повинні суворо дотримуватися програми.
Якщо ви використовуєте C++, то ви повинні суворо дотримуватися синтаксису, тобто граматики цієї мови.
Не існує граматики, якщо людина вміє читати, принаймні, якщо вона пише, вона повинна розуміти,
що вона пише.
Досить. це псевдокод.
Отже, аналітики або математики, які знають, як вирішити проблему, напишуть алгоритм, а програміст
напише програму.
Тож тепер, як студент чи людина, що вивчає комп'ютерні науки, ви маєте розробити алгоритм і написати
програму.
Але вже існує так багато алгоритмів, що нам важко вивчати їх, тому достатньо знати
всі існуючі алгоритми і вміти перетворювати їх у програму, що є достатнім.
Вам не потрібно вигадувати нічого нового, доки вам це не знадобиться.
А якщо його не існує.
Гаразд.
Ось така загальна ідея.
Про алгоритм дивіться у цій програмі, а також у псевдокоді, який я давав вам для вивчення програмування.
Люди спочатку розроблять правильний алгоритм, а потім перетворять його на програму, так
що якщо у вас є практика, а потім вам доведеться розробити свій власний алгоритм, ви повинні бути
в змозі це зробити.
Ви не повинні бути новачком в алгоритмах.
Тепер давайте я напишу приклад алгоритму, і для цього я також напишу програму на C++.
Але я не збираюся пояснювати вам, як написана ця програма, і все це лише приклад для ознайомлення.
Дозвольте мені записати це.
Отже, тут у мене є приклад алгоритму, а також програма на C++, яка не є повноцінною програмою,
а лише функцією.
Давайте вивчимо це.
Дивіться це для знаходження середнього значення списку елементів, який я маю в колекції елементів, для яких я хочу знайти
середнє значення.
Прочитайте, що сума дорівнює 0.
ОК, сума дорівнює нулю.
Це означає покласти нуль у внутрішню суму.
Так, це означає, що стрілка показує напрямок для кожного елемента x у списку, тому ми будемо називати
кожен елемент як X у списку, а потім почнемо присвоювати суму sum+ x.
Тож продовжуйте додавати елемент у сумі, щоб ця частина була схожа на додавання всіх елементів.
Потім після цього усереднює присвоєну суму за кількістю елементів, хоча я отримую середнє число, повертає середнє значення, тому,
якщо ви читали, ви можете зрозуміти, що це для знаходження середнього значення списку елементів.
Додайте їх усі і розділіть на кількість елементів.
Це все. як це пишеться англійською, а не зовсім англійською.
Схожа на англійську, як це робить програма C C++.
Якщо ви коли-небудь бачили його, то він виглядає саме так.
Ні, але чи читається.
Так.
Тоді що це за код? псевдокод.
Це псевдокод.
Тож давайте внесемо деякі зміни, якщо я перестану писати це.
Можна я скажу "товста кишка"?
присвоювати, дорівнює, двокрапка дорівнює. Це також показує напрямок.
Тоді тут також двокрапка теж дорівнює.
Так, ви можете писати, ви можете писати, ви можете читати, так що якщо ви хочете змінити символ,
змініть символ для кожного елемента x у списку.
здебільшого ми знаходимо ось так.
Гаразд, додавай.
Це теж має значення.
Тож замість початку і кінця.
Я скажу, що кронштейн для квітів - так.
Це також показує початок і кінець.
Ні, я думаю, це була квадратна дужка.
ГАРАЗД.
Використай його.
Тож зараз цього достатньо.
Ідея полягає в тому, що все, що ви пишете, має бути актуальним.
Гаразд.
Не повинно.
Не варто плутатися хоча б у тому, для кого ви пишете.
Це не слід плутати.
Так ми пишемо або алгоритмуємо за допомогою псевдокоду.
Тепер те ж саме для знаходження середнього значення списку елементів, це програма на C++.
Це функція, це не повна програма, а лише функція всередині цього.
Якщо я не отримую крапку з комою - це помилка, якщо замість присвоєння я пишу менше дефіса - це неправильно,
компілятори кажуть, що це таке.
Якщо ви хочете зберегти значення тут, ось так.
Якщо ви хочете зберегти значення, ви повинні використовувати символ дорівнює, і це називається присвоюванням.
Ви повинні писати так, де б ви не писали крапку з комою.
Це не спрацює.
Це означає, що ви повинні дотримуватися правильного синтаксису мови.
Тому що це не для вас.
Ви пишете її для того, щоб компілятор зрозумів її і перетворив у машинний код, тобто ви пишете
програму на C++, а вона перетворюється в машинний код або машинну мову.
Хто конвертує, той і компілятор конвертує.
Отже, ви розмовляєте з компілятором.
Тому ви повинні говорити так, щоб він легко розумів, якщо він не розуміє, він не може перетворити його
в машинний код.
Отже, ця мова є мовою компілятора.
Тому ви повинні дотримуватися синтаксису бездоганно.
Саме тому вам доведеться докласти трохи більше зусиль для вивчення програмування, адже на початковому етапі ви будете робити
помилки.
Ви не напишете речі правильно, ви пропустите кілька речей, ви не знаєте, які помилки у вас виникають.
Як тільки ви почнете отримувати помилки, ми почнемо розуміти, що все гаразд.
Це помилки, які я роблю, тому на помилках ви навчитеся програмувати, от і все про порівняння
алгоритмів, псевдокоду та програми.
Отже, я дав вам достатньо основ, щоб ви зрозуміли все, що в цьому відео.
Отже, наступна тема - блок-схема.