Содержание
- 2. Программирование (Python) § 17. Введение
- 3. Что такое программирование? Программирование — это создание программ для компьютеров. Этим занимаются программисты. Чем занимаются программисты:
- 4. Направления в программировании
- 5. Простейшая программа # Это пустая программа комментарии после # не обрабатываются # coding: utf-8 # Это
- 6. Вывод на экран print( "Привет!" ) оператор вывода Оператор — это команда языка программирования. print( "Привет",
- 7. Переход на новую строку print( "Привет, Вася!" ) print( "Привет, Петя!" ) Результат: Нужно в одной
- 8. Системы программирования Системы программирования — это средства для создания новых программ. Транслятор — это программа, которая
- 9. Системы программирования Отладчик — это программа для поиска ошибок в других программах. пошаговый режим — выполнение
- 10. Задачи «B»: Вывести на экран текст «лесенкой» Вася пошел гулять «C»: Вывести на экран рисунок из
- 11. Программирование (Python) § 18. Линейные программы
- 12. Пример задачи Задача. Ввести два числа и вычислить их сумму. # ввести два числа # вычислить
- 13. # ввести два числа # вычислить их сумму # вывести сумму на экран Зачем нужны переменные?
- 14. Имена переменных Идентификатор — это имя программы или переменной. a b c МОЖНО использовать латинские буквы
- 15. Работа с переменными Присваивание (запись значения) a = 5 = оператор присваивания a = 5 a
- 16. Работа с переменными Изменение значения i = i + 1 увеличить на 1 a = 4
- 17. Ввод с клавиатуры Цель – изменить исходные данные, не меняя программу. a = input() 5 a
- 18. Ввод с клавиатуры a = input() ввести строку с клавиатуры и связать с переменной a b
- 19. Ввод с подсказкой a = input( "Введите число: " ) подсказка Введите число: Qu-Qu a =
- 20. Ввод вещественных чисел print( "Введите число:" ) x = float (input()) или так: x = float
- 21. Программа сложения чисел ожидание: реальность: Введите два числа: 5 7 5+7=12 5 7 12 a =
- 22. Вывод данных с текстом 5+7=12 значение a значение с значение b print(a, "+", b, "=", c)
- 23. Программа сложения чисел print ( "Введите два числа: " ) a = int ( input() )
- 24. Ввод двух чисел в одной строке a, b = map ( int, input().split() ) input() ввести
- 25. Задачи «A»: Ввести три числа, найти их сумму. Пример: Введите три числа: 4 5 7 4+5+7=16
- 26. Задачи «C»: Ввести три числа, найти их сумму, произведение и среднее арифметическое. Пример: Введите три числа:
- 27. Арифметические выражения Линейная запись (в одну строку): a = (c + b - 1) / 2
- 28. Порядок выполнения операций a = (c + b**5*3 - 1) / 2 * d Приоритет (старшинство):
- 29. Деление Классическое деление: a = 9; b = 6 x = 3 / 4 # =
- 30. Частное и остаток // – деление нацело (остаток отбрасывается) % – остаток от деления t =
- 31. Частное и остаток n = 123 d = n // 10 # 12 k = n
- 32. Операторы // и % a = 1234 d = a % 10; print( d ) a
- 33. Сокращенная запись операций a += b # a = a + b a -= b #
- 34. Форматный вывод a = 1; b = 2; c = 3 print( a, b, c )
- 35. Форматный вывод a = 1; b = 2 print("{}+{}={}".format(a,b,c)) 1+2=3
- 36. Задачи «A»: Ввести число, обозначающее количество секунд. Вывести то же самое время в минутах и секундах.
- 37. Задачи «С»: Занятия в школе начинаются в 8-30. Урок длится 45 минут, перерывы между уроками –
- 38. print("x={:10.3f}".format(x)) Форматный вывод x=12.345678 print("x={}".format(x)) x=12.345678 12.346 3 10 всего на число в дробной части print("x={:8.2f}".format(x))
- 39. Форматный вывод 12.34 12.3 print("x={:2.2f}".format(x)) print("x={:0.1f}".format(x)) минимально возможное 12.34 print("x={:.2f}".format(x))
- 40. Научный формат чисел x=123456789 print("x={:e}".format(x)) 1.234568e+008 1,234568 ⋅108 x=0.0000123456789 print("x={:e}".format(x)) 1.234568e-005 1,234568 ⋅10–5
- 41. Операции с вещественными числами x=1.6 print(int(x)) int – целая часть числа 1 x=-1.2 print(round(x)) -1 round
- 42. Математические функции import math # квадратный корень print( math.sqrt(25) ) r = 50 # радиус окружности
- 43. Операции с вещественными числами 1/3 = 0,33333… бесконечно много знаков x = 1/2 y = 1/3
- 44. Задачи «A»: Ввести число, обозначающее размер одной фотографии в Мбайтах. Определить, сколько фотографий поместится на флэш-карту
- 45. Задачи «B»: Оцифровка звука выполняется в режиме стерео с частотой дискретизации 44,1 кГц и глубиной кодирования
- 46. Задачи «С»: Разведчики-математики для того, чтобы опознать своих, используют числовые пароли. Услышав число-пароль, разведчик должен возвести
- 47. Случайные и псевдослучайные числа Случайные явления встретил слона – не встретил слона жеребьёвка на соревнованиях лотерея
- 48. Случайные и псевдослучайные числа Псевдослучайные числа — похожи на случайные, но строятся по формуле. Xn+1= (a*Xn+b)
- 49. Датчик случайных чисел Целые числа на отрезке: from random import randint K = randint(1, 6) #
- 50. Датчик случайных чисел Вещественные числа: from random import random, uniform x = random() # полуинтервал [0,1)
- 51. Задачи «A»: В игре «Русское лото» из мешка случайным образом выбираются бочонки, на каждом из которых
- 52. Задачи «С»: + Игральный кубик бросается три раза (выпадает три случайных значения). Из этих чисел составляется
- 53. Задачи «D»: + Получить случайное трёхзначное число и вывести в столбик его отдельные цифры. Пример: Получено
- 54. Программирование (Python) § 19. Ветвления
- 55. Выбор наибольшего из двух чисел Задача: изменить порядок действий в зависимости от выполнения некоторого условия. полная
- 56. Вариант 1. Программа print("Введите два целых числа") a = int(input()) b = int(input()) if a >
- 57. Выбор наибольшего из двух чисел-2 неполная форма ветвления
- 58. Вариант 2. Программа print("Введите два целых числа") a = int(input()) b = int(input()) M = a
- 59. Примеры if a M = a if b M = b Поиск минимального:
- 60. Примеры if a c = a a = b b = c if a c =
- 61. В других языках программирования if a c:= a; a:= b; b:= c; end; Паскаль: С: if
- 62. Знаки отношений > >= == != больше, меньше больше или равно меньше или равно равно не
- 63. Вложенные условные операторы if a > b: print("Андрей старше") else: if a == b: print("Одного возраста")
- 64. Каскадное ветвление if a > b: print("Андрей старше") elif a == b: print("Одного возраста") else: print("Борис
- 65. Каскадное ветвление cost = 1500 if cost print ( "Скидок нет." ) elif cost print (
- 66. Задачи (без функций min и max!) «A»: Ввести два целых числа, найти наибольшее и наименьшее из
- 67. Задачи «C»: Ввести последовательно возраст Антона, Бориса и Виктора. Определить, кто из них старше. Пример: Возраст
- 68. Сложные условия Задача. Фирма набирает сотрудников от 25 до 40 лет включительно. Ввести возраст человека и
- 69. Плохое решение print("Введите ваш возраст") x = int(input()) if x >= 25: if x print("Подходит!") else:
- 70. Хорошее решение (операция «И») if : print("подходит") else: print("не подходит") and v >= 25 and v
- 71. Примеры Задача. Вывести "Да", если число в переменной a – двузначное. if 10 print("Да") Задача. Вывести
- 72. Сложные условия: «ИЛИ» Задача. Самолёт летает по понедельникам и четвергам. Ввести номер дня недели и определить,
- 73. Ещё пример Задача. Фирма набирает сотрудников от 25 до 40 лет включительно. Ввести возраст человека и
- 74. Сложные условия: «НЕ» if not(a print("Cтарт!") not «НЕ»: если выполняется обратное условие if a >= b:
- 75. Простые и сложные условия Простые условия (отношения) >= == != Сложное условие – это условие, состоящее
- 76. Порядок выполнения операций выражения в скобках , >=, =, != not and or 1 if not
- 77. Сложные условия Истинно или ложно при a = 2; b = 3; c = 4 not
- 78. Задачи «A»: Напишите программу, которая получает три числа - рост трёх спортсменов, и выводит сообщение «По
- 79. Задачи «B»: Напишите программу, которая получает номер месяца и выводит соответствующее ему время года или сообщение
- 80. Задачи «C»: Напишите программу, которая получает возраст человека (целое число, не превышающее 120) и выводит этот
- 81. Логические переменные b = True b = False type(b) только два возможных значения Пример: freeDay =
- 82. Задачи «A»: Напишите программу, которая получает с клавиатуры целое число и записывает в логическую переменную значение
- 83. Задачи «B»: Напишите программу, которая получает с клавиатуры трёхзначное число и записывает в логическую переменную значение
- 84. Задачи «С»: Напишите программу, которая получает с клавиатуры трёхзначное число и записывает в логическую переменную значение
- 85. Экспертная система Экспертная система — это компьютерная программа, задача которой — заменить человека-эксперта при принятии решений
- 86. Дерево решений хищник ? птица да да нет нет млекопитающее Кормит детей молоком? Имеет перья? Ест
- 87. Программирование экспертной системы Ответы пользователя: да и нет – символьные строки. ans = input("Кормит детей молоком?
- 88. Заглавные и строчные буквы if ans == "да": ... не сработает на "Да" if ans ==
- 89. Программирование (Python) § 23. Отладка программ
- 90. Виды ошибок Синтаксические ошибки – нарушение правил записи операторов языка программирования. Обнаруживаются транслятором. Логические ошибки –
- 91. Пример отладки программы from math import sqrt print("Введите a, b, c: ") a = float(input()) b
- 92. Тестирование Тест 1. a = 1, b = 2, c = 1. x1=-1.0 x2=-1.0 x1=-1.0 x2=-1.0
- 93. Отладочная печать a = float(input()) b = float(input()) c = float(input()) print(a, b, c) D =
- 94. Отладочная печать Введите a, b, c: 1 -5 6 1.0 -5.0 6.0 D= 21.0 Результат: D=
- 95. Отладка программы Тест 1. a = 1, b = 2, c = 1. x1=-1.0 x2=-1.0 x1=-1.0
- 96. Задачи «A»: Загрузите программу, которая должна вычислять сумму цифр трёхзначного числа: N = input(int("N = "))
- 97. Задачи «B»: Доработайте программу из п. А так, чтобы она правильно работала с отрицательными трёхзначными числами:
- 98. Задачи «С»: Загрузите программу, которая должна вычислять наибольшее из трёх чисел: a = input("a = ")
- 99. Программирование (Python) § 20. Программирование циклических алгоритмов
- 100. Зачем нужен цикл? Задача. Вывести 5 раз «Привет!». print("Привет") print("Привет") print("Привет") print("Привет") print("Привет") Цикл «N раз»:
- 101. Как работает цикл? переменная-счётчик счётчик = 0 пока счётчик print("Привет") счётчик = счётчик + 1 ещё
- 102. c = 5 while c > 0: print("Привет") c -= 1 Ещё один вариант счётчик =
- 103. Цикл с предусловием условие проверяется при входе в цикл как только условие становится ложным, работа цикла
- 104. Сколько раз выполняется цикл? a = 4; b = 6 while a 2 раза a =
- 105. Сумма цифр числа Задача. Вычислить сумму цифр введённого числа. 123 → 1 + 2 + 3
- 106. Сумма цифр числа выделяем последнюю цифру числа (%) увеличиваем сумму на значение цифры (sum+=d) отсекаем последнюю
- 107. Сумма цифр числа начало конец нет да N != 0? sum= 0 d = N %
- 108. Сумма цифр числа N = int(input("Введите целое число")) sum = 0 print("Сумма цифр числа", N, "
- 109. Задачи «A»: Напишите программу, которая получает с клавиатуры количество повторений и выводит столько же раз какое-нибудь
- 110. Задачи «C»: Напишите программу, которая получает с клавиатуры натуральное число и находит наибольшую цифру в его
- 111. Алгоритм Евклида Задача. Найти наибольший общий делитель (НОД) двух натуральных чисел. Евклид (365-300 до. н. э.)
- 112. Алгоритм Евклида a = b? да нет a > b? да a=a-b нет b=b-a начало конец
- 113. Алгоритм Евклида while a != b: if a > b: a = a - b else:
- 114. Модифицированный алгоритм Евклида НОД(a,b)= НОД(a % b, b) = НОД(a, b % a) Заменяем большее из
- 115. Модифицированный алгоритм while a != 0 and b != 0: if a > b: a =
- 116. В стиле Python while b!=0: a, b = b, a % b print(a) заменить a на
- 117. В других языках программирования С++: while (a!=0 && b!=0) { if (a > b) a =
- 118. Задачи «A»: Ввести с клавиатуры два натуральных числа и найти их НОД с помощью алгоритма Евклида.
- 119. Задачи «C»: Ввести с клавиатуры два натуральных числа и сравнить количество шагов цикла для вычисления их
- 120. Обработка потока данных Задача. На вход программы поступает поток данных — последовательность целых чисел, которая заканчивается
- 121. Обработка потока данных Sum = 0 x = int(input()) # первое число while x!=0: Sum +=
- 122. Задачи «A»: На вход программы поступает неизвестное количество чисел целых, ввод заканчивается нулём. Определить, сколько получено
- 123. Задачи на циклы (дополнительные) «A»: Напишите программу, которая предлагает ввести число-пароль и не переходит к выполнению
- 124. Задачи «D»: Напишите программу, которая получает с клавиатуры натуральное число и вычисляет целый квадратный корень из
- 125. Цикл по переменной Задача. Вывести на экран степени числа 2 от 20 до 210. k =
- 126. Цикл по переменной for k in range(11): print(k) 0 1 2 … 10 Начать на с
- 127. Цикл по переменной Задача. Найти сумму чисел от 1 до 1000. S = 0 for i
- 128. Цикл по переменной Задача. Найти сумму чётных чисел от 2 до 1000. S = 0 for
- 129. В других языках программирования С: int S, i; S = 0; for (i=1; i S +=
- 130. Задачи «A»: Напишите программу, которая находит количество четырёхзначных чисел, которые делятся на 7. «B»: Ипполит задумал
- 131. Задачи «D»: Натуральное число называется числом Армстронга, если сумма цифр числа, возведенных в N-ную степень (где
- 132. Программирование (Python) § 21. Массивы
- 133. Что такое массив? Массив – это группа переменных одного типа, расположенных в памяти рядом (в соседних
- 134. Обращение к элементу массива A массив 2 15 НОМЕР элемента массива (ИНДЕКС) A[0] A[1] A[2] A[3]
- 135. Обращение к элементу массива i = 1 A[2] = A[i] + 2*A[i-1] + A[2*i+1] print( A[2]+A[4]
- 136. Создание массива A = [11, 22, 35, 41, 53] A = [11, 22] + [35, 41]
- 137. Что неверно? A = [1, 2, 3, 4, 5] x = 1 print( A[x-8] ) A[x+4]
- 138. Перебор элементов массива Перебор элементов: просматриваем все элементы массива и, если нужно, выполняем с каждым из
- 139. Заполнение массива for i in range(N): A[i] = i В развёрнутом виде A[0] = 0 A[1]
- 140. X = N Заполнение массива в обратном порядке A[0] = N A[1] = N-1 A[2] =
- 141. Заполнение массива в обратном порядке A[i] = X –1 +1 i + X = N X
- 142. Вывод массива на экран for i in range(N): print( A[i] ) или так: в столбик Весь
- 143. Вывод массива на экран (Python) print ( *A ) разбить список на элементы print (1, 2,
- 144. Ввод с клавиатуры for i in range(N): s = "A[" + str(i) + "]=" A[i] =
- 145. Ввод с клавиатуры (Python) Ввод всех чисел в одной строке: data = input() # "1 2
- 146. В других языках программирования const N = 10; var A: array[0..N-1] of integer; ... for i:=0
- 147. В других языках программирования С++: int A[N], i; for (i = 0; i A[i] = i;
- 148. Задачи «A»: а) Заполните все элементы массива из 10 элементов значением X , введённым с клавиатуры.
- 149. Задачи «C»: а) Заполните массив из 10 элементов степенями числа 2, начиная с конца, так чтобы
- 150. Заполнение случайными числами from random import randint N = 10 # размер массива A = [0]*N
- 151. Обработка элементов массива N = 10 A = [0]*N # память уже выделена for i in
- 152. for i in range(N): ??? for i in range(N): ??? Обработка элементов массива Вывести числа, на
- 153. Обработка элементов массива Увеличить на 1: for i in range(N): ??? A[i] += 1 Умножить на
- 154. Задачи-2 «A»: Напишите программу, которая заполняет массив из 10 элементов случайными числами в диапазоне [0,10], выводит
- 155. Задачи-2 «C»: Напишите программу, которая заполняет массив из 10 элементов случайными числами в диапазоне [100,500] и
- 156. Программирование (Python) § 21. Алгоритмы обработки массивов
- 157. Сумма элементов массива Sum = 0 for i in range(N): Sum = Sum + A[i] print(
- 158. Сумма элементов массива (Python) Sum = 0 for x in A: Sum += x print( Sum
- 159. Сумма не всех элементов массива Sum = 0 for i in range(N): Sum += A[i] print(
- 160. Сумма не всех элементов массива Sum = 0 for x in A: Sum += x print(
- 161. Задачи «A»: Напишите программу, которая заполняет массив из 10 элементов случайными числами на отрезке [–5; 5]
- 162. Подсчёт элементов по условию Задача. Найти количество чётных элементов массива. count = 0 for i in
- 163. Подсчёт элементов по условию (Python) Задача. Найти количество чётных элементов массива. count = 0 for x
- 164. Среднее арифметическое Задача. Найти среднее арифметическое элементов массива, которые больше 180 (рост в см). Sum =
- 165. Среднее арифметическое Задача. Найти среднее арифметическое элементов массива, которые больше 180 (рост в см). Sum =
- 166. Среднее арифметическое (Python) Задача. Найти среднее арифметическое элементов массива, которые больше 180 (рост в см). B
- 167. Задачи «A»: Напишите программу, которая заполняет массив из 20 элементов случайными числами на отрезке [0; 200]
- 168. Перестановка элементов массива с = a a = b b = c элементы массива: с =
- 169. Перестановка пар соседних элементов Задача. Массив A содержит чётное количество элементов N. Нужно поменять местами пары
- 170. Перестановка пар соседних элементов for i in range(N): поменять местами A[i] и A[i+1] ? выход за
- 171. Перестановка пар соседних элементов for i in range(0,N-1,2): # переставляем A[i] и A[i+1] с = A[i]
- 172. Реверс массива Задача. Переставить элементы массива в обратном порядке (выполнить реверс). A[0]↔A[N-1] A[1]↔A[N-2] A[i]↔A[N-1-i] A[N-1]↔A[0] 0+N-1
- 173. Реверс массива for i in range(N): поменять местами A[i] и A[N-1-i] i=0 i=1 i=2 i=3 (N
- 174. Задачи «A»: Заполнить массив из 10 элементов случайными числами в диапазоне [0; 100], поменять местами пары
- 175. Задачи «C»: Заполнить массив из 10 элементов случайными числами в диапазоне [0; 100], сделать реверс отдельно
- 176. Поиск максимального элемента
- 177. Поиск максимального элемента for i in range(N): if A[i] > M: M = A[i] print( M
- 178. Поиск максимального элемента M = A[0] for i in range(1,N): if A[i] > M: M =
- 179. Поиск максимального элемента (Python) M = A[0] for x in A: if x > M: M
- 180. Номер максимального элемента Задача. Найти в массиве максимальный элемент и его номер. M = A[0]; nMax
- 181. Номер максимального элемента M = A[0]; nMax = 0 for i in range(1,N): if A[i]> M
- 182. Задачи (без min и max) «A»: Напишите программу, которая заполняет массив из 20 элементов случайными числами
- 184. Скачать презентацию