Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Less39

40 vues

Publié le

Налагодження програм. Практична робота №12. «Налагодження готової програми» Інструктаж з БЖД

Publié dans : Formation
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Less39

  1. 1. Урок №____ 8___ клас 1 група ________________ 2 група ________________ Тема: Налагодження програм. Практична робота №12. «Налагодження готової програми» Інструктаж з БЖД Мета:  навчальна: систематизувати навички налагодження програм: шукати синтаксичні та логічні помилки у програмних кодах; сформувати практичні навички налагодження програмного коду і тестування програми на різних наборах даних; формувати навички самостійної роботи, вміння використовувати ці знання в різних ситуаціях при роботі за комп’ютером.  розвивальна: розвивати логічне мислення; формувати вміння діяти за інструкцією, планувати свою діяльність, аналізувати i робити висновки;  виховна: виховувати пізнавальний інтерес до предмету. Тип уроку: урок формування вмінь і навичок. Хід уроку І. Організаційний етап  привітання  перевірка присутніх  перевірка готовності учнів до уроку ІІ. Повідомлення теми та мети уроку ІІІ. Пояснення нового матеріалу Якщо щось йде не так Що станеться, якщо в коді виявиться помилка і програма не виконається? Існує два види помилок, які можуть статися. Давайте розглянемо обидва варіанти, щоб знати, що робити в обох випадках. Синтаксичні помилки IDLE перевіряє вашу програму ще до її запуску. Якщо буде виявлено якась помилка, то це, як правило, синтаксична помилка. Синтаксис - це правила орфографії і граматики в мові програмування, тому синтаксична помилка означає, що ви написали щось, що не відповідає правилам Python. Наведемо приклад: print("Я - УКРАЇНЕЦЬ!") print("Отже, я люблю БОРЩ!") print("БОРЩ "*50) print(Хочу ще...")
  2. 2. Ми пропустили лапки між словом print і рядком “Хочу ще…". Якщо ви спробуєте запустити цю програму, то побачите повідомлення: Після цього потрібно перевірити свій код, щоб зрозуміти, що з ним не так. Редактор середовища IDLEвиділить червоним кольором місце помилки. Можливо, це не буде сама помилка, але вона має бути присутня десь поблизу. Помилки виконання Другий вид помилок - це ті помилки, які Python (або IDLE) не може виявити до запуску програми. Такі помилки виявляються тільки при виконанні програми, тому вони називаються помилками виконання. Наведемо приклад подібної помилки в програмі: print("Я - УКРАЇНЕЦЬ!") print("Отже, я люблю БОРЩ!") print("БОРЩ "+50) print("Хочу ще...") Якщо зберегти цю програму і спробувати її виконати, вона запуститься. Перші два рядки з'являться на екрані, але потім піде повідомлення про помилку:
  3. 3. Рядок, що починається зі слова Traceback, - це початок повідомлення про помилку. Наступний рядок вказує на місце помилки - назва файлу і номер рядка. Потім йде рядок з невірним кодом. Це допомагає виявити проблему в коді. Остання частина повідомлення про помилку вказує на те, в чому, власне, помилка. Коли ми ближче познайомимося з Python і програмуванням, нам буде легше зрозуміти сенс цього повідомлення. В Python не можна скласти два об'єкти різних типів, наприклад текст і число. Саме тому команда print("БОРЩ "+50) повертає помилку. Це все одно що сказати: «Якщо до п'яти пиріжків додати три гривні, скільки цукерок у мене буде?» Додавання в даному випадку безглуздо. Однак ми можемо множити практично все, що завгодно, щоб отримати більшу кількість чого-небудь. (Якщо купити два пиріжки по 5 гривень, то ми витратимо десять гривень!) Ось тому команда print("БОРЩ "*50) працює правильно. Семантичні помилки (semantic errors) Третій тип помилок - семантичні помилки. Першою ознакою наявності у вашій програмі семантичної помилки є те, що вона виконується успішно, тобто без виняткових ситуацій, але робить не те, що ви від неї очікуєте. У таких випадках проблема полягає в тому, що семантика написаної програми відрізняється від того, що ви мали на увазі. Пошук таких помилок - завдання нетривіальне, тому що доводиться переглядати результати роботи програми і розбиратися, що програма робить насправді. Процес відлагодження Уміння налагоджувати програми є дуже важливим навиком для програміста. Процес налагодження вимагає великих інтелектуальних зусиль і концентрації уваги, але це одне з найцікавіших занять. Налагодження дуже нагадує роботу натураліста. Вивчаючи результати свого попереднього експерименту, ви робите деякі висновки, потім відповідно до них змінюєте програму, запускаєте її, і знову приступаєте до аналізу отриманих результатів. Якщо отриманий результат не співпаде з очікуваним, то вам доведеться знову розбиратися в причинах, які призвели до цієї невідповідності. Якщо ж ваша гіпотеза виявиться правильною, то ви зможете передбачити результат модифікаційпрограмиі на крок наблизитися до завершення роботи над нею або, можливо, це змусить вас ще більше повірити в свою помилку. Тому для перевірки працездатності програми мало перевірити її один раз - потрібно придумативсі можливі наборивхідних даних, які можуть якось вплинути на стійкість вашої системи. Такі набори вхідних даних називають граничними значеннями. Отже, програмування - це процес поступового доопрацювання і налагодження доти, поки програма не робитиме те, що ми хочемо.
  4. 4. Починати варто з простої програми, яка робить щось просте, а потім можна приступати до нарощування її функціональності, роблячи невеликі модифікації і налагоджуючи додані шматки коду. Таким чином, на кожному кроці у вас будепрацююча програма, що, в якійсь мірі, дозволить вам судити, яку частину роботи ви вже зробили. ІV. Формування вмінь та навичок Під час виконання практичних завдань пам’ятайте про правила безпеки життєдіяльності при роботі з комп’ютером! Завдання 1 Спробуйте набрати наступний код та виправити помилки в ньому: import math a = float(input("Введіть число:')) print("Корінь числа " + a + " = " + str(sqrt(a)) Завдання 2 Перша програма нічого особливого не робила. Вона просто вивела дещо на екран. Давайте спробуємо створити що-небудь цікавіше. Наступний код - це проста гра, в якій потрібно вгадати число. import random secret = random.randint(1, 99) guess = 0 tries = 0 print("Привіт, друже! Я - це ти, тільки з майбутнього!") print("Я вже вмію програмувати, і спеціально для тебе створив цікаву гру!") print("Тобі потрібно відгадати задумане число від 1 до 99, для цього ти матимеш лише 6 спроб!") print("То що, розпочнемо?") while guess != secret and tries < 6: guess = int(input("Твій варіант: ")) if guess < secret: print("Це занадто мало, як для такої корисної гри!") elif guess > secret: print("Це занадто багато, я навіть таких чисел не знаю!") tries = tries + 1 if guess == secret: print("Досить, досить, ти вгадав, о НАЙРОЗУМНІШИЙ!!!") else: print("Ну ось і все! Твої спроби закінчились!") print("Я загадав число: ", secret) print("Надіюсь, тепер ти розумієш, що програмування - це цікаво!") У програмі всього 20 директивних рядків для Python плюс кілька порожніх рядків, щоб було зручніше читати. У вас не повинно піти багато часу на те, щоб набрати весь код. Не переживайте, якщо не зрозумієте, що означає кожна з директив. Зовсім скоро ми дійдемо і до цього.
  5. 5. Коли будете набирати код, зверніть увагу на відступи в рядках, наступних за командою while, і на ще більші відступи в рядках, наступних за командамиif і elif. Також зверніть увагу на двокрапкив кінці деякихрядків. Якщо поставити двокрапку в потрібному місці, редактор допоможе вам, почавши новий рядок з абзацу. Збережіть код та запустіть програму командою Run -- Run Module, як ми це робили в минулий раз. Спробуйте пограти в гру і подивитися, що вийде. V. Підсумки уроку Рефлексія  мені було незрозуміло…;  у мене виникли такі запитання…;  я не впорався з такими завданням…;  мені сподобалось і я буду використовувати… VІ. Домашнє завдання 1. Опрацювати статтю «Кілька слів про помилки» (http://nikolay.in.ua/navchaemos/python-3/610-kilka-sliv-pro-pomilki) 2. Опрацювати статтю «Відлагодження програм та коментарі» (http://nikolay.in.ua/navchaemos/python-3/630-vidlagodzhennya-program-ta- komentari) VІI. Оцінювання роботи учнів

×