пʼятниця, 15 січня 2021 р.

Дистанційна освіта з інформатики 18.01.2021 - 24.01.2021

 

Дистанційна освіта з інформатики в період січня 2021 року

18.01.2021 - 24.01.2021

Тема: Середовище опису та виконання алгоритмів.

Мотиваційна частина



Теоретична частина.

Цей урок з оцінками, але не виконання завдань уроку унеможливить вивчення наступної теми, тому стараємось на користь свого майбутнього успіху)))

1.   Підручник. Для підтримки процесу необхідний підручник Інформатика 7 клас (авторів Морзе, Барна) за 2020 рік. В більшості учнів підручник 2015 року, він не підходить. Як бути? В кого немає нового підручника, його можна завантажити в електронному варіанті ( в мене такий). Посилання для завантаження https://pidruchnyk.com.ua/uploads/book/7-klas-informatyka-morze-2020.pdf (не забуваємо про авторське право)

2.     Середовище програмування. Основна мова програмування, яка використовується при вивченні даної теми Python гілки 3, або його ще називають Python3. В залежності від наявних у вас пристроїв, можна обрати своє середовище (програму для написання програм). Налаштувати ваші пристрої для роботи допоможе підручник (опрацюйте п.7 підручника ст.61 -65 до вправи 3). Для користувачів OS Windows, бажано встановити Середовище Thonny, оскільки робота в ньому непогано описана в нашому підручнику.

Середовище Thonny Python IDE for beginners https://thonny.org/

Для завантаження можна прямо перейти за посиланням

Для Windows: https://github.com/thonny/thonny/releases/download/v3.3.2/thonny-3.3.2.exe

Знайомство з Python3

Мова програмування Рython 3 - це штучна мова високого рівня, зручна для створення та реалізації алгоритмів. Останнім часом ця мова набула великої популярності серед тих, хто починає вивчати програмування.

Запитання 1.
Які переваги має мова Python 3 над іншими мовами програмування?
Відповідь: Переваги мови Python 3 такі:
1. Можна мати низький поріг інтелекту для осмислення  кодів та алгоритмів
2. Зрозумілий і простий синтаксис запису кодів.
3. Короткий запис кодів.
4. Велика бібліотека готових реалізацій алгоритмів та швидкий виклик цих програм.
5. Об'єднує навколо себе велику кількість програмістів, які готові тобі допомогти у разі проблеми з програмуванням алгоритму. Досить правильно гуглити запитання.
Запитання 2.

А що можна вагоме зробити на штучній мові програмування Python 3?
Відповідь.
Сфери застосування мови програмування Python 3 такі:
1. Цю мову  використовують для веб-розробки різних інформаційних ресурсів в мережі.
2. Проводити аналіз великої кількості даних.
3. Створювати алгоритми для машинного навчання штучного інтелекту.
4. Розробляти ігри з глибоким зануренням в  тонкощі стратегій поведінки істот.
5. Автоматизувати роботу під широке коло завдань.
6. Програмувати додатки для смартфонів.

Практична частина.

 

Практично осмислюємо найпростіші зразки кодування

алгоритмів в середовищі Thonny


Зразок 1. Алгоритм обчислення площі круга.
Кодування програми на Python 3 виконується  латиницею, і ця програма  обчислює площу S круга, за відомим радіусом R. (Кирилицею вводяться лише поясненя та інструктажі в кавичках)
Реалізація.

                 
R=float(input("Введіть довжину радіуса круга: R="))
S=3.141592*R*R
print("Площа круга: S=", S)

 

Увага. Якщо дані коди програми ви самі надрукували у середовищі Thonny вірно і без помилок, то спочатку зберігаємо цю програму на комп’ютері, потім шукаємо і натискаємо піктограму: «зелений кружок з білим трикутником», декілька секунд проходить підготовка до виконання алгоритму і внизу вікна пропонується вам  ввести вхідні дані: а)друкуємо перше число - потім Enter - Через деякий час виводяться вихідні дані тобто результати обчислення - це деяке число. Аналізуємо це число, на правильність і точність.

Копіюємо ці коди в середовищі Thonny і вставляємо на чисту сторінку текстового редактора  Блокнот, а тепер прописуємо перший рядок, як «Кодування вправи 1». Потім. Копіюємо вхідні дані і результати обчислення цього алгоритму в середовищі Thonny  і вставляємо їх в Блокнот після слів: "Виконання вправи 1".  Зберігаємо цей текстовий файл «Вправа1.txt». Вправу виконано. Потім цей файл треба буде відправити вашому учителю інформатики на перевірку.



Зразок 2. Алгоритм обчислення суми послідовних натуральних чисел.
Кодування програми на  python 3 виконується  латиницею, і ця програма  обчислює суму послідовних натуральних чисел від 1 до n.
Реалізація.


N=int(input("Введіть значення N="))
S=N*(N+1)/2
print("Сума усіх чисел S=  ", N*(N+1)/2)

 

Увага. Якщо дані коди програми ви надрукували у середовищі Thonny вірно і без помилок, то спочатку зберігаємо цю програму на комп’ютері, потім шукаємо і натискаємо піктограму: «зелений кружок з білим трикутником», декілька секунд проходить підготовка до виконання алгоритму і внизу вікна пропонується вам  ввести вхідні дані: а)друкуємо перше число - потім Enter - Через деякий час виводяться вихідні дані тобто результати обчислення - - це деяке число. Аналізуємо це число, на правильність і точність.

Копіюємо ці коди в середовищі Thonny  і вставляємо на чисту сторінку текстового редактора  Блокнот, підписуємо як «Кодування вправу 2». Копіюємо вхідні дані і результати обчислення цього алгоритмув середовищі Thonny  і вставляємо в Блокнот після слів: Виконання вправи 2.  Зберігаємо цей текстовий файл «Вправа2.txt». Вправу виконано. Потім цей файл треба буде відправити вашому учителю інформатики на перевірку.



Зразок 3. Алгоритм знаходження власної швидкості v катера за відомими швидкостями катера: v1 - швидкість за течією річки, v2 - швидкість проти течії річки.
Реалізація.


v1=int(input("Введіть значення швидкості за течією річки v1="))
v2=int(input("Введіть значення швидкості проти течії річки v2="))
print("Власна швидкість v=  ", (v1+v2)/2)

 

Увага. Якщо дані коди програми ви надрукували у середовищі Thonny вірно і без помилок, то спочатку зберігаємо цю програму на комп’ютері, потім шукаємо і натискаємо піктограму: «зелений кружок з білим трикутником», проходить підготовка до виконання алгоритму і внизу вікна пропонується вам  ввести вхідні дані: а)друкуємо перше число - потім Enter - б)друкуємо друге число - потім Enter. Через деякий час виводяться вихідні дані тобто результати обчислення - - це деяке число. Аналізуємо це число, на правильність і точність.

Копіюємо ці коди в середовищі Thonny і вставляємо на чисту сторінку текстового редактора  Блокнот, підписуємо як «Кодування вправу 3». Копіюємо вхідні дані і результати обчислення цього алгоритму в середовищі Thonny  і вставляємо в Блокнот після слів: Виконання вправи 3.  Зберігаємо цей текстовий файл «Вправа3.txt». Вправу виконано. Потім цей файл треба буде відправити вашому учителю інформатики на перевірку.



Зразок 4. Алгоритм знаходження  швидкості v течії річки за відомими швидкостями катера: v1 - швидкість за течією річки, v2 - швидкість проти течії річки.
Реалізація.


v1=int(input("Введіть значення швидкості за течією річки v1="))
v2=int(input("Введіть значення швидкості проти течії річки v2="))
print("Швидкість течії річки v=  ", (v1-v2)/2)

 

Увага. Якщо дані коди програми надруковані у середовищі Thonny вірно і без помилок, то спочатку зберігаємо цю програму на комп’ютері, потім шукаємо і натискаємо піктограму: «зелений кружок з білим трикутником», проходить підготовка до виконання алгоритму і внизу вікна пропонується вам  ввести вхідні дані: а)друкуємо перше число - потім Enter - б)друкуємо друге число - потім Enter. Через деякий час виводяться вихідні дані тобто результати обчислення - - це деяке число. Аналізуємо це число, на правильність і точність.

Копіюємо ці коди в середовищі Thonny  і вставляємо на чисту сторінку текстового редактора  Блокнот, підписуємо як «Кодування вправу 4». Копіюємо вхідні дані і результати обчислення цього алгоритму в середовищі Thonny   і вставляємо в Блокнот після слів: Виконання вправи 4.  Зберігаємо цей текстовий файл «Вправа4.txt». Вправу виконано. Потім цей файл треба буде відправити вашому учителю інформатики на перевірку.

 

Результат виконаної практичної роботи( це чотири текстові файли із чотирма реалізованими програмами мовою Python в середовищі Thonny)  надіслати вашому учителю на електронну скриньку: 

vinnser@gmail.com (Сергій Петрович)
ktdfz@i.ua (Юрій Васильович)

 


Довідник для учнів, що цікавляться програмуванням

Зразки алгоритмів:  https://pythontask.pp.ua/

Python

·         Теорія

·         I. Інтерпретатор Python

·         Робота з редактором Python. Загальні питання. Інтерактивний та програмний режими роботи. Набір тексту програми

·         II. Основи Python

·         1. Типи, числа, операції

·         1.1. Представлення даних в Python. Поняття об’єкту. Ідентичність, тип, значення об’єкту. Функції id()type(). Оператори isis not

·         1.2. Літерали. Створення (генерування) об’єкту. Базові типи об’єктів

·         1.3. Числа

·         1.3.1. Представлення чисел різних типів. Базові числові типи. Функції перетворення чисел

·         1.3.2. Числа з фіксованою точністю. Клас Decimal

·         1.3.3. Раціональні числа. Клас Fraction

·         1.4. Оператори (операції)

·         1.4.1. Оператори (операції) для роботи з числовими об’єктами. Таблиця пріоритетності операцій

·         1.4.2. Змішування типів. Перетворення типів в операторах

·         1.4.3. Математичні (арифметичні) оператори. Приклади

·         1.4.4. Оператори порівняння

·         1.4.5. Бітові оператори

·         2. Рядки

·         2.1. Рядки. Загальні поняття. Оголошення рядка. Операції над рядками. Приклади

·         2.2. Екрановані послідовності. Неформатовані рядки. Багаторядкові блоки тексту

·         2.3. Доступ за індексами. Зрізи. Отримання фрагменту рядка. Приклади

·         2.4. Вбудовані функції для роботи з рядками

·         2.4.1. Засоби перетворення рядків та одиночних символів. Функції int()str()repr()float()ord()chr()

·         2.4.2. Функції len()max()min()

·         2.5. Клас str. Функції роботи з рядками

·         2.5.1. Функції для роботи з рядками, що визначають особливості рядка

·         2.5.2. Функції пошуку та заміни підрядка в рядку

·         2.5.3. Функції що визначають та обробляють початок та кінець рядка

·         2.5.4. Функції обробки рядка згідно з форматом чи правилом кодування. Стилі форматування

·         2.5.5. Функції вирівнювання рядків

·         2.5.6. Функції які змінюють регістр символів у рядку

·         2.5.7. Функції розбиття рядків на частини та утворення нових рядків з допомогою кортежів та списків

·         3. Списки

·         3.1. СпискиВластивості списків. Приклади, що демонструють властивості списків

·         3.2. Операції над списками: конкатенація (+), дублювання (*), видалення, зріз, доступ за індексом

·         3.3. Обробка списків у циклах. Створення списків з допомогою генераторів списківІтерації по списках. Представлення та обробка матриць з допомогою списків. Операція in

·         3.4. Методи роботи зі списками. Приклади

·         3.5. Об’єкти-ітератори. Використання ітераторів та генераторів для списків. Функції range()next()iter()

·         4. Словники

·         4.1. Словники. Основні поняття. Характеристики. Створення словників. Доступ до значень у словнику

·         4.2. Вбудовані функції та операції обробки словників

·         4.3. Методи роботи зі словниками

·         4.4. Робота зі словниками. Вбудовані функції list()zip(). Обхід словника. Генератори словників. Сортування. Поєднання словників з множинами

·         5. Кортежі

·         5.1. Кортежі. Основні поняття. Властивості кортежів

·         5.2. Операції над кортежами. Обхід кортежу. Методи роботи з кортежами

·         6. Файли

·         6.1. Загальні поняття. Відкриття/закриття файлу. Функції open()close()

·         6.2. Приклади роботи з текстовими файлами

·         6.3. Приклади роботи з бінарними файлами

·         6.4. Модуль struct. Робота з бінарними файлами. Приклади збереження/читання упакованих двійкових даних

·         6.5. Модуль pickle. Серіалізація об’єктів. Приклади використання для запису/читання інформації з бінарних файлів

·         6.6. Приклади розв’язку задач на модифікацію текстових файлів

·         7. Множини

·         7.1. Основні поняття. Створення множини. Операція in. Операції над множинами, які утворюють нову множину

·         7.2. Операції та функції для визначення надмножин та підмножин. Порівняння множин

·         7.3. Класи setfrozensetФункції для роботи з множинами. Приклади

·         7.4. Обмеження на застосування множин. Застосування класу frozenset. Генератори множин

·         9. Керуючі інструкції

·         9.1. Оператор присвоєння. Форми присвоювання. Приклади. Позиційне присвоювання кортежів, списків

·         9.2. Інструкція (оператор) if. Визначення. Приклади

·         9.3. Оператор whileПриклади

·         9.4. Оператор forПриклади

·         10. Функції. Видимість імен

·         10.1. Поняття функції. Загальна форма. Приклади оголошення та використання функцій

·         10.2. Області видимості імен в Python. Локальні та глобальні імена. Правила видимості імен. Правило LEGB. Ключове слово global. Перевизначення імен в функціях

·         10.3. Вкладені функції. Вкладені області видимості. Правила пошуку імен у випадку вкладених функцій. Фабричні функції. Передача значень у вкладену функцію

·         10.4. Ключове слово nonlocal. Особливості використання. Приклади

·         10.5. Аргументи в функціях

·         10.5.1. Передача аргументів у функцію. Зміна аргументів у тілі функції

·         10.5.2. Режими співставлення аргументів. Класифікація. Співставлення за позицією. Співставлення за іменами. Аргументи за замовчуванням

·         10.5.3. Режими співставлення аргументів. Аргументи змінної довжини. Комбінування різних способів співставлення аргументів. Приклади

·         12. Класи

·         12.1. Класи в Python. Загальні поняття. Ключове слово class. Об’єкти класів. Об’єкти екземплярів

·         12.2. Спадковість у класах. Правила застосування спадковості. Приклади

·         12.3. Класи і модулі. Звертання до класів інших модулів

·         12.4. Перевантаження операторів у класах

·         12.4.1. Перевантаження операторів. Загальні відомості. Методи, що перевантажують оператори. Приклади

·         ІІІ. Стандартна бібліотека Python

·         1. Модуль io. Ієрархія класів. Клас IOBase. Методи роботи з файлами

·         2. Модуль math

·         2.1. Теоретико-числові функції та функції представлення

·         2.2. Степеневі та логарифмічні функції

·         2.3. Тригонометричні функції

·         2.4. Гіперболічні функції

·         2.5. Спеціальні функції та константи

·         3. Модуль random

·         3.1. Генерування випадкових чисел. Класи RandomSystemRandom. Функції рахівництва. Функції для цілих чисел

·         3.2. Функції для послідовностей

·         3.3. Функції генерування випадкових чисел з плаваючою комою

·         4. Модуль struct. Упакування/розпакування даних. Базові методи модуля

 


Немає коментарів:

Дописати коментар