Похожие презентации:
Break, continue, else. Бесконечные циклы. Ревью кода и поиск ошибок. Урок 10
1.
Урок 10break, continue, else
Бесконечные циклы
Ревью кода и поиск
ошибок
Python для начинающих
Интерактивный курс
2.
Оператор прерывания break3.
Оператор прерывания breakОператор break прерывает ближайший цикл for или while.
result = 0
for i in range(10):
num = int(input())
if num < 0:
break
result += num
print(result)
Программа считывает 10 чисел и суммирует их до тех пор, пока не
обнаружит отрицательное число. В этом случае выполнение цикла
прерывается командой break.
3
4.
Оператор прерывания break4
Программа проверяет число на простоту:
num = int(input())
flag = True
for i in range(2, num):
if num % i == 0:
flag = False
break
if flag == True:
print('Число простое')
else:
print('Число составное')
как только мы обнаружили делитель,
мы меняем значение сигнальной метки
и выходим из цикла с помощью break
Оператор break позволяет ускорять
программы
5.
Оператор прерывания break5
Программа определяет, содержит ли число цифру 7:
n = int(input())
flag = False
while n != 0:
last_digit = n % 10
if last_digit == 7:
flag = True
break
n //= 10
if flag == True:
print('Число', n, 'содержит цифру 7')
else:
print('Число', n, 'не содержит цифру 7')
как только мы
обнаружили цифру
7 мы выходим из
цикла с помощью
оператора break
6.
Бесконечные циклы6
Если цикл не имеет возможности завершиться, то он называется
бесконечным циклом.
Самый простой способ создать бесконечный цикл:
while True:
print('Python awesome!')
Оператор break позволяет прерывать
бесконечные циклы
Python awesome!
Python awesome!
.
.
.
Python awesome!
Python awesome!
7.
Бесконечные циклыС помощью бесконечного цикла иногда удается сделать
программный код более читабельнее.
Более простым может быть завершение цикла на основе условий
внутри тела цикла, а не на основе условий в его заголовке:
while True:
if условие 1:
break
...
if условие 2:
break
...
# условие для остановки цикла
# еще одно условие для остановки цикла
7
8.
Оператор пропуска итерации continueОператор continue позволяет перейти к следующей итерации
цикла for или while до завершения всех команд в теле цикла:
for i in range(1, 101):
if i == 7 or i == 17 or i == 29 or i == 78:
continue # переходим на следующую итерацию
print(i)
8
9.
Оператор пропуска итерации continueОператор continue позволяет перейти к следующей итерации
цикла for или while до завершения всех команд в теле цикла:
for i in range(1, 101):
if i == 7 or i == 17 or i == 29 or i == 78:
continue # переходим на следующую итерацию
print(i)
Программа выводит все числа от 1 до 100, кроме чисел 7, 17, 29 и 78.
9
10.
Задача10
Что покажет приведенный ниже фрагмент кода?
for i in range(10):
print(i, end='*')
if i > 6:
break
11.
Задача11
Что покажет приведенный ниже фрагмент кода?
for i in range(10):
print(i, end='*')
if i > 6:
break
Ответ:
0*1*2*3*4*5*6*7*
12.
Задача12
Что покажет приведенный ниже фрагмент кода?
result = 0
for i in range(10):
if i % 2 == 0:
continue
result += i
print(result)
13.
Задача13
Что покажет приведенный ниже фрагмент кода?
result = 0
for i in range(10):
if i % 2 == 0:
continue
result += i
print(result)
Ответ:
25
14.
Задача14
Что покажет приведенный ниже фрагмент кода?
mult = 1
for i in range(1, 11):
if i % 2 == 0:
continue
if i % 9 == 0:
break
mult *= i
print(mult)
15.
Задача15
Что покажет приведенный ниже фрагмент кода?
mult = 1
for i in range(1, 11):
if i % 2 == 0:
continue
if i % 9 == 0:
break
mult *= i
print(mult)
Ответ:
105
16.
Задачи на программирование1. Наименьший делитель;
2. Следуй правилам.
16
17.
Анализ оптимальности, поискошибок и ревью кода
18.
Ревью кода18
Ревью кода – проверка исходного кода программы с целью
обнаружения и исправления ошибок и неточностей, которые
остались незамеченными при начальной разработке.
В процессе ревью кода могут быть исправлены:
фактические ошибки кода;
производительность кода,
читабельность кода;
ошибки форматирования кода.
Целью ревью кода является улучшение качества программного кода
и совершенствование навыков программиста.
19.
Частые ошибки1.
19
отсутствие начальной инициализации переменной;
2. неправильная начальная инициализация переменной;
3. отсутствие отступа;
4. неправильные числовые граничные значения (функции range);
5. неправильные граничные сравнения;
6. путаница логических операций or и and и т.д.
20.
Ревью кода20
Требовалось написать программу, которая выводит символ А 10 раз.
Вы ревьюите следующий код. Что вы о нем скажете? Правильно ли
он работает? Как его улучшить?
print('A')
print('A')
print('A')
print('A')
print('A')
print('A')
print('A')
print('A')
print('A')
print('A')
21.
Ревью кода21
Требовалось написать программу, которая выводит символ А 10 раз.
print('A')
print('A')
print('A')
print('A')
print('A')
print('A')
print('A')
print('A')
print('A')
print('A')
используем
цикл
for _ in range(10):
print('A')
22.
Ревью кодаТребовалось написать программу которая должна вывести все
числа от 1 до 100 кратные 7. Вы ревьюите следующий код. Что вы о
нем скажете? Правильно ли он работает? Как его улучшить?
i = 1
while i < 101:
if i % 7 == 0:
print(i)
i += 1
22
23.
Ревью кода23
Требовалось написать программу которая должна вывести все
числа от 1 до 100 кратные 7. Вы ревьюите следующий код. Что вы о
нем скажете? Правильно ли он работает? Как его улучшить?
i = 1
while i < 101:
if i % 7 == 0:
print(i)
i += 1
i = 1
while i < 101:
if i % 7 == 0:
print(i)
i += 1
24.
Ревью кода24
Требовалось написать программу которая должна вывести все
числа от 1 до 100 кратные 7. Вы ревьюите следующий код. Что вы о
нем скажете? Правильно ли он работает? Как его улучшить?
i = 1
while i < 101:
if i % 7 == 0:
print(i)
i += 1
i = 1
while i < 101:
if i % 7 == 0:
print(i)
i += 1
for i in range(7, 101, 7):
print(i)
25.
Ревью кода25
Требовалось написать программу которая выводит все числа от 100
до 1 в порядке убывания. Вы ревьюите следующий код. Что вы о нем
скажете? Как его улучшить?
for i in range(1, 100):
print(101 - i)
26.
Ревью кода26
Требовалось написать программу которая выводит все числа от 100
до 1 в порядке убывания. Вы ревьюите следующий код. Что вы о нем
скажете? Как его улучшить?
for i in range(1, 100):
print(101 - i)
for i in range(1, 101):
print(101 - i)
27.
Ревью кода27
Требовалось написать программу которая выводит все числа от 100
до 1 в порядке убывания. Вы ревьюите следующий код. Что вы о нем
скажете? Как его улучшить?
for i in range(1, 100):
print(101 - i)
for i in range(1, 101):
print(101 - i)
for i in range(100, 0, -1):
print(i)
28.
Ревью кода28
Требовалось написать программу которая находит сумму всех
нечетных чисел от 1 до 1000. Вы ревьюите следующий код. Что вы о
нем скажете? Как его улучшить?
a = 1
for i in range(1, 1000):
if i % 2 == 1:
a = a + 1
print(a)
29.
Ревью кода29
Требовалось написать программу которая находит сумму всех
нечетных чисел от 1 до 1000. Вы ревьюите следующий код. Что вы о
нем скажете? Как его улучшить?
a = 1
for i in range(1, 1000):
if i % 2 == 1:
a = a + 1
print(a)
a = 0
for i in range(1, 1001):
if i % 2 == 1:
a = a + i
print(a)
30.
Ревью кода30
Требовалось написать программу которая находит сумму всех
нечетных чисел от 1 до 1000. Вы ревьюите следующий код. Что вы о
нем скажете? Как его улучшить?
a = 1
for i in range(1, 1000):
if i % 2 == 1:
a = a + 1
print(a)
total = 0
for i in range(1, 1001):
if i % 2 == 1:
total += i
print(total)
31.
Ревью кода31
Требовалось написать программу которая находит сумму всех
нечетных чисел от 1 до 1000. Вы ревьюите следующий код. Что вы о
нем скажете? Как его улучшить?
a = 1
for i in range(1, 1000):
if i % 2 == 1:
a = a + 1
print(a)
total = 0
for i in range(1, 1001, 2):
total += i
print(total)
32.
Ревью кода32
Требовалось написать программу которая вычисляет факториал
числа. Вы ревьюите следующий код. Что вы о нем скажете? Как его
улучшить?
n = input()
a = 0
for i in range(n):
a = a * i
print(a)
33.
Ревью кода33
Требовалось написать программу которая вычисляет факториал
числа. Вы ревьюите следующий код. Что вы о нем скажете? Как его
улучшить?
n = input()
a = 0
for i in range(n):
a = a * i
print(a)
n = int(input())
a = 1
for i in range(1, n + 1):
a *= i
print(a)
34.
Ревью кода34
Требовалось написать программу которая вычисляет факториал
числа. Вы ревьюите следующий код. Что вы о нем скажете? Как его
улучшить?
n = input()
a = 0
for i in range(n):
a = a * i
print(a)
n = int(input())
factorial = 1
for i in range(1, n + 1):
factorial *= i
print(factorial)
35.
Ревью кода35
Программа считывает числа пока не введено число -1 и вычисляет
среднее арифметическое чисел больших 7. Вы ревьюите следующий
код. Что вы о нем скажете? Как его улучшить?
a = -2
b = 1
c = 0
while a != -1:
a = input()
if a >= 7:
b = b + a
c = c + 1
print(c / b)
36.
Ревью кода36
Программа считывает числа пока не введено число -1 и вычисляет
среднее арифметическое чисел больших 7. Вы ревьюите следующий
код. Что вы о нем скажете? Как его улучшить?
a = -2
b = 1
c = 0
while a != -1:
a = input()
if a >= 7:
b = b + a
c = c + 1
print(c / b)
a = int(input())
b = 0
c = 0
while a != -1:
if a > 7:
b = b + a
c = c + 1
a = int(input())
print(b / c)
37.
Ревью кода37
Программа считывает числа пока не введено число -1 и вычисляет
среднее арифметическое чисел больших 7. Вы ревьюите следующий
код. Что вы о нем скажете? Как его улучшить?
a = -2
b = 1
c = 0
while a != -1:
a = input()
if a >= 7:
b = b + a
c = c + 1
print(c / b)
num = int(input())
total = 0
counter = 0
while num != -1:
if num > 7:
total += num
counter += 1
num = int(input())
print(total / counter)
Программирование