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