Содержание
- 2. Программирование на языке Python § 54. Введение в язык Python
- 3. Простейшая программа # Это пустая программа комментарии после # не обрабатываются # -*- coding: utf-8 -*-
- 4. Вывод на экран print ( "2+2=?" ) print ( "Ответ: 4" ) Протокол: 2+2=? Ответ: 4
- 5. Сложение чисел Задача. Ввести с клавиатуры два числа и найти их сумму. Протокол: Введите два целых
- 6. Сумма: псевдокод ввести два числа вычислить их сумму вывести сумму на экран Псевдокод – алгоритм на
- 7. Переменные Переменная – это величина, имеющая имя, тип и значение. Значение переменной можно изменять во время
- 8. Имена переменных МОЖНО использовать латинские буквы (A-Z, a-z) русские буквы (не рекомендуется!) цифры знак подчеркивания _
- 9. Как записать значение в переменную? a = 5 оператор присваивания 5 Оператор – это команда языка
- 10. Ввод значения с клавиатуры 5 a
- 11. Ввод значения с клавиатуры a = input() ввести строку с клавиатуры и связать с переменной a
- 12. Ввод двух значений в одной строке a, b = map ( int, input().split() ) input() ввести
- 13. Ввод с подсказкой a = input ( "Введите число: " ) подсказка Введите число: 26 a
- 14. Изменение значений переменной a = 5 b = a + 2 a = (a + 2)*(b
- 15. Вывод данных print ( a ) значение переменной print ( "Ответ: ", a ) значение и
- 16. Сложение чисел: простое решение a = int ( input() ) b = int ( input() )
- 17. print ( "Введите два числа: " ) a = int ( input() ) b = int
- 18. Форматный вывод print( f"{a}+{b}={a+b}" a = 5 print ( f"{a:5}{a*a:5}{a*a*a:5}" ) 5 знаков на число
- 19. Типы переменных int # целое float # вещественное bool # логические значения str # символьная строка
- 20. Зачем нужен тип переменной? Тип определяет: область допустимых значений допустимые операции объём памяти формат хранения данных
- 21. Размещение переменных в памяти a = 5 оператор присваивания 5 a a = 4.5 4.5 «сборщик
- 22. Арифметическое выражения a = (c + b**5*3 - 1) / 2 * d Приоритет (старшинство): скобки
- 23. Деление Классическое деление: a = 9; b = 6 x = 3 / 4 # =
- 24. Сокращенная запись операций a += b # a = a + b a -= b #
- 25. Программирование на языке Python § 55. Вычисления
- 26. Остаток от деления % – остаток от деления d = 85 b = d // 10
- 27. Вещественные числа Форматы вывода: x = 123.456 print( x ) print( f"{x:10.2f}" ) 123.456 всего знаков
- 28. Вещественные числа Экспоненциальный формат: x = 1./30000 print( f"{x:e}" ) x = 12345678. print( f"{x:e}" )
- 29. Стандартные функции abs(x) — модуль числа int(x) — преобразование к целому числу round(x) — округление x
- 30. Математические функции math.pi — число «пи» math.sqrt(x) — квадратный корень math.sin(x) — синус угла, заданного в
- 31. Документирование программы from math import sqrt print( "Введите a, b, c:" ) a, b, c =
- 32. Документирование программы Руководство пользователя: назначение программы формат входных данных формат выходных данных примеры использования программы Назначение:
- 33. Документирование программы Формат выходных данных: значения вещественных корней уравнения; если вещественных корней нет, выводится слово «нет»
- 34. Случайные числа Случайно… встретить друга на улице разбить тарелку найти 10 рублей выиграть в лотерею Случайный
- 35. Случайные числа на компьютере Электронный генератор нужно специальное устройство нельзя воспроизвести результаты 318458191041 564321 209938992481 458191
- 36. Линейный конгруэнтный генератор X = (a*X+b) % c | интервал от 0 до c-1 X =
- 37. Генератор случайных чисел Генератор на [0,1): X = random.random() # псевдослучайное число Y = random.random() #
- 38. Генератор случайных чисел Генератор на [0,1): X = random(); # псевдослучайное число Y = random() #
- 39. Задачи «A»: Ввести с клавиатуры три целых числа, найти их сумму, произведение и среднее арифметическое. Пример:
- 40. Задачи «C»: Получить случайное трехзначное число и вывести через запятую его отдельные цифры. Пример: Получено число
- 41. Программирование на языке Python § 56. Ветвления
- 42. Условный оператор Задача: изменить порядок действий в зависимости от выполнения некоторого условия. полная форма ветвления if
- 43. Условный оператор: неполная форма неполная форма ветвления M = a if b > a: M =
- 44. Условный оператор if a с = a a = b b = c 4 6 ?
- 45. Знаки отношений > >= == != больше, меньше больше или равно меньше или равно равно не
- 46. Вложенные условные операторы if a == b: print("Одного возраста") else: if a > b: print("Андрей старше")
- 47. Каскадное ветвление if a == b: print("Одного возраста") elif a > b: print("Андрей старше") else: print("Борис
- 48. Каскадное ветвление cost = 1500 if cost print ( "Скидок нет." ) elif cost print (
- 49. Задачи «A»: Ввести три целых числа, найти максимальное из них. Пример: Введите три целых числа: 1
- 50. Задачи «C»: Ввести последовательно возраст Антона, Бориса и Виктора. Определить, кто из них старше. Пример: Возраст
- 51. Сложные условия Задача: набор сотрудников в возрасте 25-40 лет (включительно). if : print("подходит") else: print("не подходит")
- 52. Задачи «A»: Напишите программу, которая получает три числа и выводит количество одинаковых чисел в этой цепочке.
- 53. Задачи «B»: Напишите программу, которая получает номер месяца и выводит соответствующее ему время года или сообщение
- 54. Задачи «C»: Напишите программу, которая получает возраст человека (целое число, не превышающее 120) и выводит этот
- 55. Задачи «A»: Напишите условие, которое определяет заштрихованную область. «B»: Напишите условие, которое определяет заштрихованную область.
- 56. Задачи «C»: Напишите условие, которое определяет заштрихованную область.
- 57. Программирование на языке Python § 57. Циклические алгоритмы
- 58. Что такое цикл? Цикл – это многократное выполнение одинаковых действий. Два вида циклов: цикл с известным
- 59. Повторения в программе print("Привет“) print("Привет") ... print("Привет")
- 60. Блок-схема цикла начало конец да нет тело цикла
- 61. Как организовать цикл? счётчик = 0 пока счётчик print("Привет“) увеличить счётчик на 1 счётчик = 10
- 62. Цикл с условием Задача. Определить количество цифр в десятичной записи целого положительного числа, записанного в переменную
- 63. Считаем цифры count = 0 while : n = n // 10 count += 1 тело
- 64. Максимальная цифра числа n = int(input()) M = -1 while n > 0: d = n
- 65. Цикл с условием k = 0 while k print ( "привет" ) k += 1 При
- 66. Сколько раз выполняется цикл? a = 4; b = 6 while a 2 раза a =
- 67. Задачи «A»: Напишите программу, которая получает два целых числа A и B (0 Пример: Введите два
- 68. Задачи «C»: Ввести натуральное число N и вычислить сумму всех чисел Фибоначчи, меньших N. Предусмотрите защиту
- 69. Задачи-2 «A»: Ввести натуральное число и найти сумму его цифр. Пример: Введите натуральное число: 12345 Сумма
- 70. Задачи-2 «C»: Ввести натуральное число и определить, верно ли, что в его записи есть две одинаковые
- 71. Алгоритм Евклида Алгоритм Евклида. Чтобы найти НОД двух натуральных чисел, нужно вычитать из большего числа меньшее
- 72. Алгоритм Евклида Модифицированный алгоритм Евклида. Заменять большее число на остаток от деления большего на меньшее до
- 73. Задачи «3»: Ввести с клавиатуры два натуральных числа и найти их НОД с помощью алгоритма Евклида.
- 74. Задачи «5»: Ввести с клавиатуры два натуральных числа и сравнить количество шагов цикла для вычисления их
- 75. Цикл с постусловием while True: if n > 0: break условие выхода print ( "Введите положительное
- 76. Программирование на языке Python § 58. Циклы по переменной
- 77. Цикл с переменной Задача. Вывести 10 раз слово «Привет!». while : print("Привет!") i = 0 i
- 78. Цикл с переменной Задача. Вывести все степени двойки от 21 до 210. while : print (
- 79. Цикл с переменной: другой шаг 100 81 64 49 36 25 16 9 4 1 1
- 80. Сколько раз выполняется цикл? a = 1 for i in range( 3): a += 1 a
- 81. Задачи «A»: Найдите все пятизначные числа, которые при делении на 133 дают в остатке 125, а
- 82. Задачи «С»: Натуральное число называется автоморфным, если оно равно последним цифрам своего квадрата. Например, 252 =
- 83. Вложенные циклы Задача. Вывести все простые числа в диапазоне от 2 до 1000. сделать для n
- 84. Вложенные циклы for n in range(2, 1001): count = 0 if count == 0: print( n
- 85. Вложенные циклы for i in range(1,4): for k in range(1,4): print( i, k ) 1 1
- 86. Вложенные циклы for i in range(1,5): for k in range(1,i+1): print( i, k ) 1 1
- 87. Поиск простых чисел – как улучшить? count = 0 k = 2 while : if n
- 88. Задачи «A»: Напишите программу, которая получает натуральные числа A и B (A Пример: Введите границы диапазона:
- 89. Задачи «C»: Ввести натуральное число N и вывести все натуральные числа, не превосходящие N и делящиеся
- 90. Программирование на языке Python § 59. Процедуры
- 91. Зачем нужны процедуры? print ( "Ошибка программы" ) много раз! def Error(): print( "Ошибка программы" )
- 92. Что такое процедура? Процедура – вспомогательный алгоритм, который выполняет некоторые действия. текст (расшифровка) процедуры записывается до
- 93. Процедура с параметрами Задача. Вывести на экран запись целого числа (0..255) в 8-битном двоичном коде. много
- 94. Процедура с параметрами Задача. Вывести на экран запись целого числа (0..255) в 8-битном двоичном коде. Решение:
- 95. Процедура с параметрами printBin ( 99 ) значение параметра (аргумент) def printBin( n ): k =
- 96. Локальные и глобальные переменные a = 5 def qq(): a = 1 print ( a )
- 97. Неправильная процедура x = 5; y = 10 def xSum(): print ( x+y ) xSum() def
- 98. Правильная процедура x = 5; y = 10 Sum2( x, y ) z=17; w=3 Sum2( z,
- 99. Задачи «A»: Напишите процедуру, которая принимает параметр – натуральное число N – и выводит на экран
- 100. Задачи «C»: Напишите процедуру, которая выводит на экран запись переданного ей числа в римской системе счисления.
- 101. Программирование на языке Python § 60. Функции
- 102. Что такое функция? Функция – это вспомогательный алгоритм, который возвращает значение-результат (число, символ или объект другого
- 103. Что такое функция? def lastDigit( n ): d = n % 10 return d Задача. Написать
- 104. Сумма цифр числа def sumDigits( n ): sum = 0 while n!= 0: sum += n
- 105. Использование функций x = 2*sumDigits( n+5 ) z = sumDigits( k ) + sumDigits( m )
- 106. Задачи «A»: Напишите функцию, которая находит наибольший общий делитель двух натуральных чисел. Пример: Введите два натуральных
- 107. Задачи «C»: Напишите функцию, которая «переворачивает» число, то есть возвращает число, в котором цифры стоят в
- 108. Как вернуть несколько значений? def divmod ( x, y ): d = x // y m
- 109. Задачи «A»: Напишите функцию, которая переставляет три переданные ей числа в порядке возрастания. Пример: Введите три
- 110. Задачи «C»: Напишите функцию, которая вычисляет наибольший общий делитель и наименьшее общее кратное двух натуральных чисел.
- 111. Логические функции def even(n): if n % 2 == 0: return True else: return False Логическая
- 112. Логические функции Задача. Найти все простые числа в диапазоне от 2 до 1000. for i in
- 113. Функция: простое число или нет? def isPrime ( n ): for d in range(2,n): if n
- 114. Функция: простое число или нет? Пусть Тогда def isPrime ( n ): for d in range(2,
- 115. Функция: простое число или нет? def isPrime ( n ): d = 2 while d*d d
- 116. Логические функции: использование n = int ( input() ) while isPrime(n): print ( n, "– простое
- 117. Задачи «A»: Напишите логическую функцию, которая определяет, является ли переданное ей число совершенным, то есть, равно
- 118. Задачи «B»: Напишите логическую функцию, которая определяет, являются ли два переданные ей числа взаимно простыми, то
- 119. Задачи «С»: Простое число называется гиперпростым, если любое число, получающееся из него откидыванием нескольких последних цифр,
- 120. Программирование на языке Python § 61. Рекурсия
- 121. Что такое рекурсия? У попа была собака, он её любил, Она съела кусок мяса, он её
- 122. Что такое рекурсия? Натуральные числа: индуктивное определение Рекурсия — это способ определения множества объектов через само
- 123. Фракталы Фракталы – геометрические фигуры, обладающие самоподобием. Треугольник Серпинского:
- 124. Ханойские башни за один раз переносится один диск класть только меньший диск на больший третий стержень
- 125. Ханойские башни – процедура def Hanoi ( n, k, m ): p = 6 - k
- 126. Ханойские башни – процедура Рекурсивная процедура (функция) — это процедура (функция), которая вызывает сама себя напрямую
- 127. Вычисление суммы цифр числа Задача. Написать рекурсивную функцию, которая вычисляет сумму цифр числа. s = sumDigits(
- 128. Вычисление суммы цифр числа def sumDigits ( n ): if n d = n % 10
- 129. Вычисление суммы цифр числа sumDigits ( 123 ) d = 3 sum = 3 + sumDigits
- 130. Вывод двоичного кода числа def printBin ( n ): if n == 0: return printBin (
- 131. Алгоритм Евклида Алгоритм Евклида. Чтобы найти НОД двух натуральных чисел, нужно вычитать из большего числа меньшее
- 132. Задачи «A»: Напишите рекурсивную функцию, которая вычисляет НОД двух натуральных чисел, используя модифицированный алгоритм Евклида. Пример:
- 133. Задачи «C»: Дано натуральное число N. Требуется получить и вывести на экран количество всех возможных различных
- 134. Как работает рекурсия? def Fact(N): print ( "->", N ) if N else: F = N
- 135. Стек Стек – область памяти, в которой хранятся локальные переменные и адреса возврата. Fact(3) Fact(2) Fact(1)
- 136. Рекурсия – «за» и «против» с каждым новым вызовом расходуется память в стеке (возможно переполнение стека)
- 137. Анализ рекурсивных функций Задача. Что выведет эта программа? def f( x ): if x return 1
- 138. Анализ рекурсивных функций Задача. Что выведет эта программа? def f( x ): if x return 1
- 139. Анализ рекурсивных функций Чему равно f (5)? Табличный метод : 11 f(3) = f(2) + 2*f(1)
- 140. Анализ рекурсивных функций Задача. Сколько звёздочек выведет эта программа? def f( x ): if x >
- 141. Анализ рекурсивных функций Задача. Сколько звёздочек выведет эта программа? def f( x ): if x >
- 142. Анализ рекурсивных функций f (1) = g(0) + f (–1) + 1 = 3 f (2)
- 143. Конец фильма ПОЛЯКОВ Константин Юрьевич д.т.н., учитель информатики ГБОУ СОШ № 163, г. Санкт-Петербург [email protected] ЕРЕМИН
- 145. Скачать презентацию