7 клас мова прорамування Пайтон

 

7-А-клас-дистанційне-навчання

Обов’язково зареєструйтеся на сайті test.edu.vn.ua
Матеріали уроків та домашні завдання
З М І С Т
Оператор введення
Типи даних. Змінні
Алгоритм роботи над числовими величинами
Поняття про модуль. Створення графічних примітивів
Текстові величини та операції над ними
Логічні величини та операції над ними
Команда розгалуження мовою Python
Складання програм з використанням алгоритмічної структури розгалуження.
Цикли в програмуванні. Цикл While.

Тема уроку: Мова програмування Python. Оператор введення

Тема уроку: Алгоритм роботи над числовими величинами

1.
# Ввести два цілих числа. Знайти суму цих чисел.
a = int(input("Введи перше число "))
b = int(input("Введи друге число "))
S = a + b
print("Сума введених чисел S=",S, sep="") 

  Результат виконання програми
Введи перше число 20
Введи друге число 80
Сума введених чисел S=100 
2.
# Ввести два цілих числа. Перше число збільшити на 100, а друге збільшити у 2 рази.
# Знайти добуток новоутворених чисел.
a = int(input("Введи перше число "))
b = int(input("Введи друге число "))
a = a + 100
b = 2 * b
d = a * b
print("Добуток оброблених чисел d=",d, sep="") 

 Результат виконання програми
Введи перше число 20
Введи друге число 30
Добуток оброблених чисел d=7200
3.
# Ввести два цілих числа. Знайти площу прямокутника сторонами якого є введені числа.
# Перше число збільшити на 100, а друге збільшити у 2 рази.
# Знайти площу прямокутника сторонами якого є оброблені числа.
# Знайти у скільки раз площа першого прямокутника менша, ніж другого.
a = int(input("Введи перше число "))
b = int(input("Введи друге число "))
S1 = a * b
a = a + 100
b = 2 * b
S2 = a * b
k = S2 / S1
print("Площа першого в ",int(k)," раз менша, ніж другого")

 Результат виконання програми
Введи перше число 20
Введи друге число 30
Площа першого в  12  раз менша, ніж другого
4.
# Ввести трицифрове ціле число. Знайти суму цифр даного числа.
# Приклад: якщо введено число 127, то виведено 10 (1+2+7).
a = int(input("Введи трицифрове число "))
# суму цифр будемо шукати в змінній S
S = 0 # з самого початку запишемо в змінну 0 (ініціалізація)
# цифри будемо зберігати в змінній cifra
cifra = a % 10 # остання цифра
S = S + cifra
a = a // 10 # робимо введене число двоцифровим (відкидаємо останню цифру)
cifra = a % 10 # остання цифра (друга)
S = S + cifra
a = a // 10 # робимо введене число одноцифровим
S = S + a
print("Сума цифр введеного числа S=",S, sep="")

 Результат виконання програми
Введи трицифрове число 127
Сума цифр введеного числа S=10

Домашнє завдання відправити на dist.navch.ulaniv@Gmail.com
1.Ввести число. Вивести його на екран (5 балів)
2.Ввести два числа. Знайти різницю другого і першого чисел. (6 балів)
3.Ввести число. Збільшити його на 2020 і вивести на екран (6 балів)
4.Ввести три числа a, b, c. Знайти значення виразу 4(a+c)+3b (7 балів)
5.Ввести чотири числа a, b, c, d. Знайти значення виразу ((a+c)d+5b) (8 балів)
6.Ввести чотири числа a, b, c, d. Знайти значення виразу ((a+c)d+5b)/(a+b+c+d) (9 балів)
7.Ввести чотири числа a, b, c, d. Знайти суму остач від ділення кожного з чисел на 12 (10 балів)
8.Ввести шестицифрове число.Знайти суму цифр (10 балів)
9.Дано дробове (дійсне) число. Ціла частина числа містить чотири знаки, а дробова – 5.
Знайти суму цифр даного числа. (11 балів)
Порада: для перетворення стрічки в дійсне число використати функцію float()
10.Дано дробове (дійсне) число. Ціла частина числа містить п’ять знаків, а дробова – 4.
Знайти суму цифр окремо цілої частини і дробової. (12 балів)
Порада: для перетворення стрічки в дійсне число використати функцію float()
11.Є приміщення прямокутної форми розміром a на b.
По периметру приміщення є коридор (затінена область)
Є плитка розміром 1м на 1м і вартістю 245 грн за 1 плитку.
Знайти площу коридору, кількість плиток необхідних для створення підлоги в коридорі і вартість плиток.
Всі числа a, b, c, d – цілі. (12 балів)



Завдання для самостійного розв’язку

Завдання 1. Ввести чотири цілих числа. Перших два – це довжини першого і другого прямокутників, а других два – це ширина першого і другого прямокутників. Знайти суму площ прямокутників.
Приклад: введено – 25, 15, 8, 6; виведено – 290
Завдання 2. Ввести чотири цілих числа. Перших два – це довжина і ширина першого прямокутника, а других два – це довжина і ширина другого прямокутника. Якої довжини потрібно мати дріт, щоб виготовити такі прямокутники?
Приклад: введено – 25, 10, 30, 15; виведено – 160
Завдання 3. Є алюмінієва пластинка прямокутної форми, розміри  якої: а – довжина, b – ширина і d – товщина. Розрахувати масу пластинки в грамах і кілограмах Густина алюмінію 2,7 г/см.куб.
Приклад: введено – 50 см, 10 см, 4 мм;
виведено – Маса пластинки в грамах – 540
Маса пластинки в кілограмах – 0,54
Завдання 4. Всередині прямокутного паралелепіпеда розміром c  є порожнина, що має форму кубика з ребром dЗнайти об’єм речовини паралелепіпеда. Знайти об’єм в метрах кубічних і сантиметрах кубічних.
Приклад: введено – 50 см, 20 см, 15 см, 10 см;
виведено – Об’єм в куб.см. – 14000
Об’єм в куб.м – 0,014
Завдання 5. Всередині алюмінієвого прямокутного паралелепіпеда розміром c  є порожнина, що має форму кубика з ребром dЗнайти масу речовини паралелепіпеда, якщо густина алюмінію 2700 кг/м.куб. Знайти масу в грамах і кілограмах.
Приклад: введено – 50 см, 20 см, 15 см, 10 см;
виведено – Маса пластинки в грамах – 37800
Маса пластинки в кілограмах – 37,8

 

 
Тема уроку: Мова програмування Python. Поняття про модуль.

Щоб підключити додатковий модуль до програми, застосовують таку конструкцію:
import назва_модуля
Модулі оголошуються на початку програми. Доступ до команди додаткового модуля здійснюють
за шаблоном: назва_модуля.команда
Наприклад, модуль math містить додаткові команди для роботи з числами, які не входять до стандартного набору. У таблиці наведено деякі з функцій модуля math.

 
Команда
Результат
Приклад
math.fabs(x)Модуль х (|x|)math.fabs(-10); результат: 10.0
math.ceil(x)Округл. до найближч більш цілого числаmath.ceil(9.1); результат: 10
math.factorialФакторіал числа х—добуток послідовних натуральних чисел від 1 до х
math.factorial(5);
результат: 120 (1*2*3*4*5)
math.sqrt(x)Квадратний корінь із числа хmath.sqrt(100); результат: 10.0

Модуль random містить функції для генерування випадкових чисел, букв, випадкового набору послідовності.

Команда
Значення
random.randint(a, b)випадкове ціле число n, a ≤ n ≤ b
random.randint(3, 5)випадкове ціле число n, 3 ≤ n ≤ 5; випадкове 3 або 4 або 5
random.random()випадкове число від 0 до 1
random.choice([‘a’,’о’,’у’,’е’,’и’,’і’,’ї’,’ю’])вибір випадкового значення зі списку, наприклад, зі списку голосних літер українського алфавіту.

Щоб підключити додатковий модуль графічних примітивів застосовують один із трьох способів:
1.import turtle
2.from turtle import*
3.from turtle import open as t

Перший спосіб імпортує МОДУЛЬ, але команди потрібно писати із згадуванням модуля (turtle.backward(x))
Другий спосіб дозволяє звертатися до команд модуля безпосередньо без згадування імені модуля (backward(x))
Третій спосіб дозволяє замінити назву МОДУЛЯ своїм іменем: t.backward(x), t.fd(100)
У таблиці наведено деякі команди з модуля turtle.

Команда
Значення
turtle.forward(x)Пройти вперед x пікселів
turtle.backward(x)Пройти назад x пікселів
turtle.left(x)Повернутись ліворуч на x градусів
turtle.right(x)Повернутись праворуч на x градусів
turtle.penup()Не залишати слід під час руху
turtle.pendown()Залишати слід під час руху
turtle.shape(x)Змінити значок виконавця (ꞌarrowꞌ, ꞌturtleꞌ, ꞌcircleꞌ, ꞌsquareꞌ, ꞌtriangleꞌ, ‘classic’)
turtle.shapesize(m,n)Розміри виконавця
turtle.tilt(alpha)Зміна напрямку виконавця
turtle.hideturtle()Сховати черепашку
turtle.showturtle(Показати черепашку
turtle.stamp()turtle.stamp()
turtle.color()Установити колір
turtle.begin_fill()Необхідно викликати перед малюванням фігури, яку слід зафарбувати
turtle.end_fill()Викликати після завершення малювання фігури
turtle.width()Установити товщину лінії
turtle.goto(x, y)Перемістити виконавця в точку (x, y)
  
  
  
  
  


 
І Н Д И В І Д У А Л Ь Н И Й  П Р О Е К Т. 
Модуль Turtle (черепашка)
 Mалюнки для проекту

 



Тема уроку: Мова програмування Python.
Текстові величини та операції над ними

Для опрацювання текстових даних мовою програмування використовують величини типів:
  • символьного – значенням величини символьного типу може бути один символ:
    • л і т е р а
    • ц и ф р а
    • з н а к
  • рядкового – послідовність символів утворює рядок

Надавати значення текстовим величинам, як і числовим, можна:

  • при написанні програмного коду за допомогою оператора присвоювання:
    t=’полова’; s=”карта”
  • під час виконання програми, що містить оператор введення:
    st=input(‘введіть слово’)

Рядки можуть містити набори символів, що починаються з похилої риски – \ (обернений слеш) вони називаються escape-послідовностями.
При виведенні рядка такі символи опрацьовуються спеціальним чином і можуть повністю або частково не відображатися на екрані.

\n
перехід на новий рядок
\t
вставлення табуляції
\’
одинарні лапки (корисно, якщо необхідно вставити, наприклад, апостроф у рядок, оточений одинарними лапками).
\”
подвійні лапки (корисно, якщо необхідно вставити подвійні лапки в рядок, оточений подвійними лапками);

У послідовностях важливий порядок символів, у кожного символу в рядку є унікальний порядковий номер – індекс. Можна звертатися до конкретного символу в рядку і отримувати його з допомогою оператора індексування, який представляє собою квадратні дужки з номером символу в них. За цим номером можна отримати символ, вказавши номер у квадратних дужках після імені змінної.
Наприклад: t2=’трикутник’, print(t2[4])- надрукує букву у

В А Ж Л И В О !  У Python нумерація розпочинається з нуля

 

 
t[3:7]
г
р
а
м
        
Прямий індекс
0
1
2
3
4
5
6
7
8
9
10
11
12
13
➡
t =
п
р
о
г
р
а
м
н
и
й
 
к
о
д
Зворотній індекс
-14
-13
-12
-11
-10
-9
-8
-7
-6
-5
-4
-3
-2
-1
⬅
 
t[-11:-7]
г
р
а
м
        

Операції над текстовими величинами

1.Операція СКЛЕЮВАННЯ — поєднання кількох рядкових величин, яка позначається символом <<+>>
Приклад програмного коду:
f=’роль’; t=’е’; k=’банд’; s=k+t+f; print(s) – результат – бандероль
2.Операція ДУБЛЮВАННЯ — кожен новий дубляж підклеюється до попередньої стрічки, яка позначається символом *
Приклад програмного коду:
f=’кіт’; print(f*3) – результат – кіткіткіт

ВАЖЛИВО!  Текстові величини є незмінюваними, це означає,
 що не можна змінити частину рядка, не створивши нового. 

У програмі мовою програмування Python при роботі з текстовими величинами можна використовувати операцію зрізу, за допомогою якої копіюється послідовність або її частина.

Нехай значенням змінної t є текст Планета Земля (t=’Планета Земля’)
Опис
Приклад команди
Результат — значення змінної t1
Зріз від початку рядка до символу з номером nt1 = t[:7] + ‘ ‘ + МарсПланета Марс
Зріз від символу з номером n рядка до символу з номером m
t1 = t[1:4]лан
Зріз від символу з номером n рядка включно до кінця рядка
t1 = t[8:]Земля

 

 

 

 

Для запису рядка у зворотному порядку, використовують операцію: s3=s[::-1] ЯКЩО s=’околом’ ТО s3==’молоко’
 

 

 

 

 
Функція
Тип аргументу
Тип результату
Призначення
len()
текстовийцілийвизначає кількість символів у рядку s
chr(x)
цілийсимвольнийвизначає символ із кодом x ( таблиця Unicode )
ord(c)
символьнийцілийвизначає код символу с (таблиця Unicode)
    

Розв’язування задач

Домашнє завдання

Написати програму для розв’язання завдання:
Ввести своє прізвище ( ім’я змінної – р )
Ввести ввести своє ім’я ( ім’я змінної – i )
Ввести дату свого дня народження у форматі: рік, місяць, число (20050802) ( ім’я змінної – d )
Вивести на екран монітора:

  • ім’я і прізвище в одній стрічці через три пробіли
  • довжину прізвища ( ім’я змінної –  )
  • довжину імені ( ім’я змінної – ni )
  • надрукувати слово поле стільки раз, якою є довжина імені. Між словами має бути символ *
  • вивести в одній стрічці перший символ прізвища і останній символ імені
  • вивести своє прізвище в зворотньому порядку
  • вивести дату народження у форматі: день, місяць, рік ( 02082005) )
  • вивести рік народження
  • вивести рік народження в зворотньому порядку ( 5002 )
  • знайти суму цифр свого року народження
  • знайти код першого символу свого прізвища
  • вивести символ код якого дорівнює року народження

Зразок виконаного домашнього завдання

Логічні величини та операції над ними
Презентація: Логічні величини в Python

Домашнє завдання

Заповнити таблицю істинності

A
B
C
not C
A and B and C
A or B or C
A or B and C
A and B or C
A xor B xor C
false
false
false
      
false
false
true
      
false
true
false
      
false
true
true
      
true
false
false
      
true
false
true
      
true
true
false
      
true
true
true
      
Завдання 2. Знайти результат логічного виразу 
a=18
b=34
a=a+32
b=b+16
not(a==50) and not (a-b==0)
(a>45) or (a+b==125)
(a==18) and (b>34) or (b==50)

Команда розгалуження мовою Python


# Ввести з клавіатури число,
# якщо воно більше 50 то збільшити його на 250
Результат вивести на екран 
a=int(input('Введіть число '))
if a>50:
    a+=250
print(a)

%%%%%%%%%%%%%%


# Ввести з клавіатури число,
# якщо воно більше 150 то збільшити його на 250,
# а інакше зменшити на 20.
# Результат вивести на екран 
a=int(input('Введіть число '))
if a>150:
    a+=250;
    print(a);
else:
    a-=20;
    print(a)

# Ввести з клавіатури число,
# сказати яке воно: парне чи непарне?  
k=int(input('Введіть число '))
if k%2==0:
    print('ПАРНЕ');
else:
    print('НЕПАРНЕ');

# Ввести з клавіатури два числа,
# якщо хоча б одне із них
# парне, то знайти їхню суму,
# якщо обоє парні, то знайти їх добуток,
# а інакше знайти різницю першого і другого
a=int(input('Введіть число '))
b=int(input('Введіть число '))
if a%2==0 and b%2==0:
   c=a*b;
elif a%2==0 or b%2==0:
   c=a+b;
else:
   c=a-b;
print(c)

 


# Ввести з клавіатури два числа (a,b),
# якщо перше число ділиться на 2, 
# а друге на 3, то надрукувати речення  
# Остача від ділення 12 на 9 становить 3
# якщо введені числа не підпадають під нашу умову
# то вивести їхню суму
a=int(input('Введіть число '))
b=int(input('Введіть число '))
ost=a%b
if a%2==0 and b%3==0:
   print('Остача від ділення',a,' на ',b,' становить ',ost)
else:
   c=a+b;
   print(c)

# Ввести слово, якщо його довжина менша 6,
# то потроїти перший символ, а інакше подвоїти 
# останній символ. Вивести на екран утворене слово
s=input('Введіть слово ')
n=len(s)
if n<6:
    s1=s[0];
    s2=s1*2;
    s3=s2+s;
    print(s3);
else:
    s4=s[n-1];
    s5=s+s4;
    print(s5)

Задачі для самостійного розв’язку

1.Ввести число, якщо воно ділиться на 7 то збільшити його у 7 раз,
а інакше збільшити на 7
*************
2.Ввести число, якщо воно ділиться на 7 то збільшити його у 7 раз,
а інакше збільшити його в стільки раз, яка остача від ділення
введеного числа на 7
*************
3.Ввести три числа, якщо перше число більше за суму другого і третього
то знайти суму всіх чисел, а інакше знайти суму остач від ділення
введених чисел на 10
*************
4.Ввести три числа. Сказати чи існує трикутник, сторони якого дорівнюють
введеним числам.
Приклад: 2, 3, 5 – такий трикутник не існує; 3, 4, 5 – існує
*************

Складання програм з використанням алгоритмічної структури розгалуження.


# Завдання 1
# Ввести ціле число, якщо воно належить діапазону [5;50)
# то збільшити його на 100, а інакше не змінювати
a=int(input('Введіть ціле число '))
if a>=5 and a<50:
    a=a+100
print(a)

Тестування
Введіть ціле число 4
4
Введіть ціле число 5
105
Введіть ціле число 49
149
Введіть ціле число 50
50


# Завдання 2
# Ввести ціле число, якщо воно належить діапазону [5;50)
# або діапазону [100;200]
# то збільшити його на 100, а інакше не змінювати
a=int(input('Введіть ціле число '))
if (a>=5 and a<50) or (a>=100 and a<=200):
    a=a+100
print(a)

Тестування програми
Введено: 2, 10, 99, 100, 150, 200, 300
Виведено: 2, 110, 99, 200, 250, 300, 300


# Завдання 3
# Ввести ціле число, якщо воно належить діапазону [5;50)
# то збільшити його на 100, а інакше, якщо воно лежить
# справа від діапазону то збільшити його у два рази,
# а інакше зменшити на величину самого числа
a=int(input('Введіть ціле число '))
if a>=5 and a<50:
    a=a+100
elif a>49:
    a=2*a
else:
    a=a-a
print(a)

Тестування програми
Введено: 2, 10, 50
Виведено: 0, 110, 100


# Завдання 4
# Ввести слово, якщо кількість символів парна
# то надрукувати дане слово два рази підряд,
# а інакше три рази підряд
s=input('Введіть слово ')
n=len(s)
if n%2==0:
    print(2*s)
else:
    print(3*s)


Тестування програми
Введіть слово рука
рукарука
Введіть слово словник
словниксловниксловник


# Завдання 5
# Ввести слово, якщо кількість символів чотири
# то подвоїти кожен символ, якщо кількість символів три
# то потроїти кожен символ в інших випадках
# надрукувати слово без останнього символа
s=input('Введіть слово ')
n=len(s)
if n==4:
    s1=s[0]
    s2=s[1]
    s3=s[2]
    s4=s[3]
    t=s[0]+s[0]+s[1]+s[1]+s[2]+s[2]+s[3]+s[3]
    print(t)
elif n==3:
    s1=s[0]
    s2=s[1]
    s3=s[2]
    t=s[0]+s[0]+s[0]+s[1]+s[1]+s[1]+s[2]+s[2]+s[2]
    print(t)
else:
    t=s[0:n-1]
    print(t)


Тестування програми
Введіть слово кора
ккоорраа
Введіть слово рів
ррріііввв
Введіть слово коровай
корова


# за відомими значеннями двох величин знайти:
# або масу тіла, або густину речовини, або об'єм тіла,
# що саме обчислювати вибирати програмно 
print("Виберіть величину для обчислення:1-масу тіла, 2-об'єм тіла, 3-густину речовини")
k=int(input("Введіть ваш вибір "))
if k==1:
    ro=float(input('Введіть густину ')) 
    v=float(input("Введіть об'єм "))
    m=ro*v  
    print('маса тіла m=',m)
elif k==2:
    ro=float(input('Введіть густину '))
    m=float(input('Введіть масу '))
    v=m/ro
    print("об'єм тіла v=",v)
else:
    v=float(input("Введіть об'єм "))
    m=float(input('Введіть масу '))
    ro=m/v
    print('густина речовини ro=',ro)

Тестування програми
Введіть ваш вибір 1
Введіть густину 1500
Введіть об'єм 4.5
маса тіла m= 6750.0

Введіть ваш вибір 2
Введіть густину 6500
Введіть масу 4000
об'єм тіла v= 0.6153846153846154

Введіть ваш вибір 3
Введіть об'єм 0.485
Введіть масу 398
густина речовини ro= 820.6185567010309
 Цикли в програмуванні. Цикл While.
Цикли — це інструкції, що виконують одну і ту ж саму послідовність дій, 
        поки діє задана умова.
У реальному житті ми досить часто стикаємося з циклами. Наприклад, ходьба
людини - цілком циклічне явище: крок лівою, крок правою, знову лівою-правою 
і т. д., поки не буде досягнута певна мета (наприклад, школа чи магазин). 
У комп'ютерних програмах поряд з інструкціями розгалуження (тобто вибором 
шляху дії) також існують інструкції циклів (повторення дії).
Якби інструкцій циклу не існувало, довелося б багато разів вставляти 
в програму один і той же код підряд стільки разів, скільки потрібно виконати
однакову послідовність дій. Універсальним організатором циклу в мові програмування 
Python (як і в багатьох інших мовах) є конструкція while. Слово "while"
з англійської мови перекладається як "доки" ("доки логічний вираз має значення
True, доти будуть виконуватись певні операції"). 
Конструкцію while мовою Python можна описати наступною схемою:
while a логічний оператор b:
    оператор 1
    оператор 2 . . .
Ця схема приблизна, тому що логічний вираз в заголовку циклу while може бути 
більш складним, а змінюватися можуть змінні, які стоять і зліва і справа від 
оператора порівняння. Може виникнути питання: "Навіщо змінювати a або b?". 
Коли виконання програмного коду доходить до циклу while, виконується логічний 
вираз в заголовку, і, якщо було отримано True, виконуються вкладені вирази. 
Після потік виконання програми знову повертається в заголовок циклу while, 
і знову перевіряється умова. Якщо умова ніколи не буде змінюватись, то не 
буде причин зупинки циклу і програма зациклиться. Щоб цього не сталося, 
необхідно передбачити можливість виходу з циклу.
Таким чином, змінюючи значення змінної в тілі циклу, можна довести логічний 
вираз до False і цикл завершиться.
Цю змінювану змінну, яка використовується в заголовку циклу while, зазвичай 
називають лічильником. Як і всякій змінній їй можна давати довільні імена, 
однак дуже часто використовують букви i та j.
 Найпростіший цикл на мові програмування Python може виглядати так:
str1 = "+"
i = 0
while i < 10:
    print(str1)
    i = i + 1
В останньому рядку коду відбувається збільшення значення змінної i на одиницю, 
тому з кожним колом циклу її значення збільшується. Коли буде досягнуте число 10, 
логічний вираз i < 10 дасть False, виконання тіла циклу буде припинено, а потік 
виконання програми перейде на наступні команди, що слідують після циклу. 
Результатом виконання вищевказаного скрипту є виведення на екран десяти 
знаків “+” в стовпчик. Якщо збільшувати лічильник в тілі циклу не на одиницю, 
а на 2, то буде виведено тільки п'ять знаків, так як цикл зробить лише п'ять обертів.

Презентація – Цикли з передумовою

Більш складний приклад з використанням циклу:


fib1 = 0
fib2 = 1
print (fib1)
print (fib2)
n = 10
i = 0
while i < n:
    fib_sum = fib1 + fib2
    print(fib_sum)
    fib1 = fib2
    fib2 = fib_sum
    i = i + 1

Цей приклад виводить числа Фібоначчі - ряд чисел, в якому кожне наступне число
дорівнює сумі двох попередніх: 0, 1, 1, 2, 3, 5, 8, 13 і т.д. Скрипт виводить 
дванадцять членів ряду: два (0 і 1) виводяться поза циклом і десять виводяться 
в результаті виконання циклу.
Як це відбувається? Вводяться дві змінні (fib1 та fib2), яким присвоюються 
початкові значення. Присвоюються значення змінній n та лічильнику i, між якими 
ті чи інші математичні відносини формують бажане число витків циклу.
Всередині циклу створюється змінна fib_sum, якій присвоюється сума двох попередніх 
членів ряду, і її ж значення виводиться на екран.
Далі змінюються значення fib1 та fib2 (першому присвоюється друге, а другому-сума),
 а також збільшується значення лічильника.
# Знайти суму перших 100 чисел кратних 3 і які
# не закінчуються нулем
s=0
a=3
i=1
while i<=100:
    if a%10!=0:
        i=i+1
        s=s+a
    a=a+3
print(s)
s==16668
# Ввести два цілих числа. Знайти суму всіх цілих чисел,
# які належать даному діапазону
a=int(input('Введіть перше ціле число '))
b=int(input('Введіть друге ціле число (більше)'))
s=0
i=a
while i<=b:
    s=s+i
    i=i+1
print(s)
введено a==50 b==50 виведено s==124025
# Стався наїзд на пішохода. Водій з місця пригоди зник. Свідчення очевидців:
# Всі цифри номера були різними, перша і остання цифри були точно парними
# Чи достатньо цієї інформації, щоб розшукати водія?
k=0
a=0
while a<=9:
    b=0
    while b<=9:
        c=0
        while c<=9:
            d=0
            while d<=9:
                l1=a!=b and a!=c and a!=d  and b!=c and b!=d and c!=d
                l2=a%2==0 and d%2==0
                if l1 and l2:
                    k=k+1
                    s1=str(a)
                    s2=str(b)
                    s3=str(c)
                    s4=str(d)                    
                    print(s1+s2+s3+s4)
                d=d+1
            c=c+1
        b=b+1
    a=a+1
print('k=',k)   
   k=1120 
# Стався наїзд на пішохода. Водій з місця пригоди зник. Свідчення очевидців:
# Всі цифри номера були різними, перша і остання цифри були точно парними
# Цифри нуль не було 
# Чи достатньо цієї інформації, щоб розшукати водія?
k=0
a=0
while a<=9:
    b=0
    while b<=9:
        c=0
        while c<=9:
            d=0
            while d<=9:
                l1=a!=b and a!=c and a!=d  and b!=c and b!=d and c!=d
                l2=a%2==0 and d%2==0
                l3=a!=0 and b!=0 and c!=0 and d!=0
                if l1 and l2 and l3:
                    k=k+1
                    s1=str(a)
                    s2=str(b)
                    s3=str(c)
                    s4=str(d)                    
                    print(s1+s2+s3+s4)
                d=d+1
            c=c+1
        b=b+1
    a=a+1
print('k=',k)
   k=504 
# Стався наїзд на пішохода. Водій з місця пригоди зник. Свідчення очевидців:
# Всі цифри номера були різними, перша і остання цифри були точно парними
# Цифри нуль не було
# Цифри в номері йшли по зростанню
# Чи достатньо цієї інформації, щоб розшукати водія?
k=0
a=0
while a<=9:
    b=0
    while b<=9:
        c=0
        while c<=9:
            d=0
            while d<=9:
                l1=a!=b and a!=c and a!=d  and b!=c and b!=d and c!=d
                l2=a%2==0 and d%2==0
                l3=a!=0 and b!=0 and c!=0 and d!=0
                l4 = a < b < c < d
                if l1 and l2 and l3 and l4:
                    k=k+1
                    s1=str(a)
                    s2=str(b)
                    s3=str(c)
                    s4=str(d)                    
                    print(s1+s2+s3+s4)
                d=d+1
            c=c+1
        b=b+1
    a=a+1
print('k=',k)
   k=16 
# Стався наїзд на пішохода. Водій з місця пригоди зник. Свідчення очевидців:
# Всі цифри номера були різними, перша і остання цифри були точно парними
# Цифри нуль не було
# Цифри в номері йшли по зростанню
# Сума крайніх цифр така ж як і сума внутрішніх
# Чи достатньо цієї інформації, щоб розшукати водія?
k=0
a=0
while a<=9:
    b=0
    while b<=9:
        c=0
        while c<=9:
            d=0
            while d<=9:
                l1=a!=b and a!=c and a!=d  and b!=c and b!=d and c!=d
                l2=a%2==0 and d%2==0
                l3=a!=0 and b!=0 and c!=0 and d!=0
                l4 = a < b < c < d
                l5=a+d==b+c
                if l1 and l2 and l3 and l4 and l5:
                    k=k+1
                    s1=str(a)
                    s2=str(b)
                    s3=str(c)
                    s4=str(d)                    
                    print(s1+s2+s3+s4)
                d=d+1
            c=c+1
        b=b+1
    a=a+1
print('k=',k)
 k=4    
 
# Стався наїзд на пішохода. Водій з місця пригоди зник. Свідчення очевидців:
# Всі цифри номера були різними, перша і остання цифри були точно парними
# Цифри нуль не було
# Цифри в номері йшли по зростанню
# Сума крайніх цифр така ж як і сума внутрішніх
# Друга цифра більша 3
# Чи достатньо цієї інформації, щоб розшукати водія?
k=0
a=0
while a<=9:
    b=0
    while b<=9:
        c=0
        while c<=9:
            d=0
            while d<=9:
                l1=a!=b and a!=c and a!=d  and b!=c and b!=d and c!=d
                l2=a%2==0 and d%2==0
                l3=a!=0 and b!=0 and c!=0 and d!=0
                l4 = a < b < c < d
                l5=a+d==b+c
                l6=b>3
                if l1 and l2 and l3 and l4 and l5 and l6:
                    k=k+1
                    s1=str(a)
                    s2=str(b)
                    s3=str(c)
                    s4=str(d)                    
                    print(s1+s2+s3+s4)
                d=d+1
            c=c+1
        b=b+1
    a=a+1
print('k=',k)
 k=2, 2468 або 4578  

# Ввести 10 цілих чисел. Знайти суму введених чисел 
i=1
s=0
while i<=10:
    print('Введіть ',i,' число')
    a=int(input('Введіть ціле число '))
    s=s+a
    i=i+1
print(s) 
# Ввести 10 цілих чисел. Знайти суму введених чисел
# і надрукувати число, яке було найбільшим
max=int(input('Введіть число '))
i=2
s=0
while i<=10:
    print('Введіть ',i,' число')
    a=int(input('Введіть ціле число '))
    if a>max:
        max=a
    s=s+a
    i=i+1
print(s)
print(max)

Практична робота
1.Вивести всі двоцифрові числа сума цифр яких 7.
2.Вивести всі двоцифрові числа, які складаються з різних цифр
3.Вивести всі трицифрові числа, які складаються з різних цифр
4.Написати програму, яка сформує перших 20 членів ряду: 1,2,3,6,11,20,37,
5.Напишіть скрипт на мовою Python, що виводить ряд чисел Фібоначчі
(див. приклад вище). Запустіть його на виконання. Потім змініть код так,
щоб виводився ряд чисел Фібоначчі, починаючи з п’ятого члена ряду
і закінчуючи двадцятим.
6.Напишіть цикл, що виводить ряд парних чисел від 0 до 20.
7.Напишіть цикл, що виводить кожне третє число в ряді від -1 до -21.
8.Самостійно придумайте програму на Python, в якій би використовувався
цикл while.