Опис алгоритмів із циклом із передумовою мовою програмування
Наприклад, наступний фрагмент програми надрукує на екрані квадрати всіх цілих чисел від 1 до 10.
У цьому прикладі змінна iвсередині циклу змінюється від 1 до 10. Така змінна, значення якої змінюється з кожним новим циклом, називається лічильником. Зауважимо, що після виконання цього фрагмента значення змінної i дорівнюватиме 11, оскільки саме за i == 11 умова i <= 10 вперше перестане виконуватися.
Скорочена форма оператора while працює таким чином. Визначається значення логічного виразу. Якщо це значення true, то виконується команда, що слідує після рядка зі знаком «:» у рядках, які мають відступ 4 позиції. Якщо значення логічного виразу false, то цикл завершується й управління передається команді, яка записана у програмному коді після тіла циклу (з рядка, який перебуває на тому ж рівні, що і команда while). У тілі циклу обов’язково використовують команду, яка буде змінювати значення величини, що використовується в логічному виразі.
Повна форма оператора while мовою програмування Python, окрім команд, що входять до блоку while, використовує конструкцію else: після якої в новому рядку роблять відступ 4 позиції та записують команди, що мають виконуватись, якщо значення логічного виразу false.
Завдання із життя.
У багажник автомобіля вантажать овочі та фрукти з дачі: картопля, капусту, моркву, яблука, груші та ін. Об'єм багажника дорівнює 350 л. Продукти кладуть послідовно, обсяг кожного вантажу відомий у літрах. Потрібно сказати, в який момент (назвати номер вантажу) багажник переповниться. Програма виглядає так:
s = 0 # сумарний обсяг вантажу
n = 0 # номер вантажу
while s < 350: # перевірка умови досягання максиму вантажу
x = int ( input ()) # вводимо об'єм чергового вантажу
s = s + x # додаєм об'єм чергового вантажу до вже існуючого
n = n + 1 # рахуємо номер чергового вантажу
print ( 'багажник заповнений',n, 'зайвий')
Тут змінна s зберігає сумарний обсяг вже накопичених вантажів, в змінну x зчитується обсяг чергового вантажу, а n рахує номер вантажу.
Працюємо гуртом
Що буде виведено на екран в результаті виконання команд?
20
6
11
5
Що буде виведено на екран в результаті виконання команд?
20
8
80
0.8
import random
chislo=random.randint(1,100)
print("перше=",chislo)
n=1
while chislo!=100:
chislo=random.randint(1,100)
print(chislo)
n+=1
print("Кількість=",n)
Задача 3
Ліфт витримує 400 кг. У ліфт заходять люди масою від 50 до 80 кг. Скільки людей зайде в ліфт?
lift=400
import random
person=random.randint(50,81)
print(person)
suma=person
k=1
while suma<=lift:
person=random.randint(50,81)
print(person)
suma+=person
k=k+1
print("У ліфт зайшло",k,"людей")