Домашнее задание
Задачи на листочках
-5 and x x=-1 and x x=float(input()) if x=2: y=4 else: y=x**2 print(y)" width="640"
Проверка домашнего задания
Запись на языке Python
x%7!=0
y!=0
x-5 and x
x=-1 and x
x=float(input())
if x=2:
y=4
else:
y=x**2
print(y)
Самостоятельная работа:
Вариант 1
Вариант 2
Повтори:
- Где ты можешь наблюдать повторяющиеся процессы? Приведи примеры.
- К какому типу относится алгоритм, содержащий конструкцию «повторение»?
- Вспомни виды циклических конструкций.
нц для _ от_ до _ шаг _
тело цикла
кц
Цикл с заданным
Цикл с заданным
Цикл с заданным
условием продолжения
условием окончания
числом повторений
работы
работы
1 балл
Тема урока:
Программирование алгоритмической конструкции «цикл»
while
repeat
for
Кутепова Н.В, МОАУ «СОШ №4 г.Соль- Илецка Оренбургской обл.»2017 г.
Задачи урока:
виды циклических конструкций.
Повторить:
Познакомиться :
с правилами программирования циклических конструкций.
По 1 баллу
Кутепова Н.В, МОАУ «СОШ №4 г.Соль- Илецка Оренбургской обл.»2017 г.
Цикл с заданным условием продолжения работы
Алгоритмический язык
Язык Python
нц пока условие
тело цикла
while условие:
кц
тело цикла
Зачем нужен цикл?
Задача . Вывести 5 раз «Привет!».
print ( "Привет" )
print ( "Привет" )
print ( "Привет" )
print ( "Привет" )
print ( "Привет" )
?
А если 5000?
такого оператора нет в Python!
Цикл «N раз» :
сделай 5 раз
print ( "Привет" )
8
Как работает цикл?
!
Нужно запоминать, сколько раз цикл уже выполнен!
переменная-счётчик
ещё не делали
счётчик = 0
пока счётчик 5
print ( "Привет" )
счётчик = счётчик + 1
сделали ещё раз
счётчик += 1
c = 0
while c 5 :
print ( "Привет" )
c += 1
9
Цикл с предусловием
- условие проверяется при входе в цикл
- как только условие становится ложным, работа цикла заканчивается
- если условие ложно в самом начале, цикл не выполняется ни разу
while условие :
...
тело цикла
?
Если условие никогда не станет ложно?
бесконечный цикл (зацикливание)
while True :
...
b: a += 1 1 раз b = -2 a = 4 ; b = 6 while a b: b = a - b зацикливание a = 4 ; b = 6 while a b: a -= 1" width="640"
10
Сколько раз выполняется цикл?
2 раза
a = 6
a = 4 ; b = 6
while a b: a += 1
1 раз
a = 10
a = 4 ; b = 6
while a b: a += b
0 раз
a = 4
a = 4 ; b = 6
while a b: a += 1
1 раз
b = -2
a = 4 ; b = 6
while a b: b = a - b
зацикливание
a = 4 ; b = 6
while a b: a -= 1
Цикл с заданным числом повторений
Алгоритмический язык
Язык Python
нц для X от 1 до 5
тело цикла
for X in range (1,6):
кц
тело цикла
Цикл по переменной
Задача . Вывести на экран степени числа 2 от 2 0 до 2 10 .
!
k = 0
N = 1
while k 10 :
print (N)
N = N* 2
k = k + 1
k = 0
Работа с k в трёх местах!
Идея : собрать всё вместе.
k 10
не включая 11!
с нуля!
k = k + 1
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
N = 1
for k in range ( 11 ):
print (N)
N = N* 2
k in range ( 11 )
сделать 11 раз
13
Цикл по переменной
0
1
2
…
10
?
for k in range ( 11 ):
print (k)
Что выведет?
for k in [ 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 ]:
print (k)
Начать не с 0, а с 1:
for k in [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 ]:
print (k)
начальное значение
for k in range ( 1 ,11 ):
print (k)
1
14
Цикл по переменной
Задача . Найти сумму чисел от 1 до 1000.
S = 0
for i in range ( 1,1001 ):
S += i
Задача . Вывести квадраты чисел от 10 до 1 по убыванию.
for k in [ 10 , 9 , 8 , 7 , 6 , 5 , 4 , 3 , 2 , 1 ]:
print (k*k)
шаг
не включая 0
for k in range ( 10 , 0 , –1 ):
print (k*k)
14
Цикл по переменной
Задача . Найти сумму чётных чисел от 2 до 1000.
S = 0
for i in range ( 2 , 1001 ):
if i % 2 == 0 :
S += i
?
Что плохо?
шаг
S = 0
for i in range ( 2 , 1001 , 2 ):
S += i
2