Файл: Алгоритм и его свойства Простейшие программы Вычисления Ветвления Символьные строки Циклические алгоритмы Массивы (списки) Поиск в массиве Алгоритм и его свойства Что такое алгоритм.pptx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 30.11.2023

Просмотров: 1087

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Алгоритм и его свойства

Простейшие программы

Вычисления

Ветвления

Символьные строки

Циклические алгоритмы

Массивы (списки)

Поиск в массиве

Алгоритм и его свойства

Что такое алгоритм?

Свойства алгоритма

Введение в язык Python

Черепашья графика

TURTLE

Координатное поле окна для рисования

Задания для рисования

Как организовать цикл (36 повторений)?

Координатное поле

Простейшие программы

Простейшая программа

Вывод на экран

Задания

Сложение чисел

Сумма: псевдокод

Переменные

Имена переменных

Типы переменных

Зачем нужен тип переменной?

Как записать значение в переменную?

Ввод с подсказкой

Изменение значений переменной

Вывод данных

Вывод данных через format

Сложение чисел: простое решение

Сложение чисел: полное решение

Задания

Задания

Вычисления

Арифметическое выражения

Деление

Остаток от деления

Операторы // и %

Сокращенная запись операций

Ввод двух значений в одной строке

Задания

Задания

Случайные числа

Случайные числа на компьютере

Линейный конгруэнтный генератор

Задачи

Задачи

Ветвления

Условный оператор

Условный оператор: неполная форма

Условный оператор

Знаки отношений

Вложенные условные операторы

Каскадное ветвление

Каскадное ветвление

Задачи (без функций min и max!)

Задачи

Задачи

Сложные условия

Сложные условия

Сложные условия

Задачи

Задачи

Задачи

Символьные строки

Символьные строки

Символьные строки

Символьные строки

Срезы

Срезы строк

Операции со строками

Операции со строками

Задачи

Задачи

Задачи

Циклические алгоритмы

Что такое цикл?

Повторения в программе

Блок-схема цикла

Как организовать цикл?

Цикл с условием

Цикл с условием

Задачи

Задачи

Задачи

Алгоритм Евклида

Алгоритм Евклида

Задачи

Задачи

Обработка строк в цикле

Проверка символов

Задачи

Задачи

Цикл с переменной

Цикл с переменной

Цикл с переменной: другой шаг

Задачи

Задачи

Массивы (списки)

Что такое массив?

Что такое массив?

Массивы в Python: списки

Заполнение массива

Заполнение случайными числами

Вывод массива на экран

Задачи

Задачи

Перебор элементов

Что выведет программа?

Подсчёт нужных элементов

Перебор элементов

Как работает цикл?

Среднее арифметическое

Задачи

Задачи

Поиск в массиве

Поиск в массиве

Поиск в массиве

Поиск в массиве

Задачи

Задачи

Задачи

Максимальный элемент

Максимальный элемент

Задачи (без функции max)

Задачи

Конец фильма

Деление

Классическое деление:a = 9; b = 6x = 3 / 4 # = 0.75 x = a / b # = 1.5x = -3 / 4 # = -0.75 x = -a / b # = -1.5Целочисленное деление (округление «вниз»!):a = 9; b = 6x = 3 // 4 # = 0 x = a // b # = 1x = -3 // 4 # = -1 x = -a // b # = -2

Остаток от деления

% – остаток от деленияd = 85b = d // 10 # 8 a = d % 10 # 5 d = a % b # 5 d = b % a # 3a = 15b = 19d = a // b # 0 a = a % b # 15

Операторы // и %

a = 1234d = a % 10; print( d ) a = a // 10 # 123 d = a % 10; print( d ) a = a // 10 # 12 d = a % 10; print( d ) a = a // 10 # 1 d = a % 10; print( d ) a = a // 10 # 0 4321

Сокращенная запись операций

a += b # a = a + b a -= b # a = a - b a *= b # a = a * b a /= b # a = a / ba //= b # a = a // ba %= b # a = a % ba += 1 увеличение на 1

Ввод двух значений в одной строке

a, b = map ( int, input().split() )input()ввести строку с клавиатуры21 33 input().split() 2133 разделить строку на части по пробеламmap ( int, input().split() )2133 целыеприменитьэту операциюк каждой частиa, b = map ( int, input().split() )

Задания

«3»: Ввести три числа: цену пирожка (два числа: рубли, потом – копейки) и количество пирожков. Найти сумму, которую нужно заплатить (рубли и копейки) Пример: Стоимость пирожка: 12 50 Сколько пирожков: 5 К оплате: 62 руб. 50 коп.«4»: Ввести число, обозначающее количество секунд. Вывести то же самое время в часах, минутах и секундах. Пример: Число секунд: 8325 2 ч. 18 мин. 45 с

Задания

«5»: Занятия в школе начинаются в 8-30. Урок длится 45 минут, перерывы между уроками – 10 минут. Ввести номер урока и вывести время его окончания. Пример: Введите номер урока: 6 13-50

Случайные числа

Случайно…
  • встретить друга на улице
  • разбить тарелку
  • найти 10 рублей
  • выиграть в лотерею
Случайный выбор:
  • жеребьевка на соревнованиях
  • выигравшие номера в лотерее
Как получить случайность?

Случайные числа на компьютере

Электронный генератор
  • нужно специальное устройство
  • нельзя воспроизвести результаты
318458191041564321209938992481458191938992
  • малый период (последовательность повторяется через 106 чисел)
Метод середины квадрата (Дж. фон Нейман)в квадратеПсевдослучайные числа

– обладают свойствами случайных чисел, но каждое следующее число вычисляется по заданной формуле.

зерно

Линейный конгруэнтный генератор

X = (a*X+b) % c | интервал от 0 до c-1X = (X+3) % 10 | интервал от 0 до 9X = 0зерно 3 6 9 2 5 8 0зацикливание8 1 4 7Важен правильный выбор параметров a, b и с!!Компилятор GCC:a = 1103515245 b = 12345c = 231 Генератор на [0,1): X = random.random() # псевдосл. числоY = random.random() # уже другое число!Целые числа на отрезке [a,b]: X = random.randint(1,6) # псевдосл. числоY = random.randint(1,6) # уже другое число!import randomангл. random – случайныйГенератор на [a, b] (вещественные числа): X = random.uniform(1.2, 3.5) Y = random.uniform(1.2, 3.5)Генератор на [0,1): X = random() # псевдослучайное числоY = random() # это уже другое число!Целые числа на отрезке [a,b]: X = randint(10,60) # псевдослучайное числоY = randint(10,60) # это уже другое число!from random import *англ. random – случайныйподключить все!

Задачи

«3»: Игральный кубик бросается три раза (выпадает три случайных значения). Сколько очков в среднем выпало? Пример:_Выпало_очков:_5_3_1_(5+3+1)/3=3_«4»'>Пример:Выпало очков:5 3 1(5+3+1)/3=3«4»: Игральный кубик бросается три раза (выпадает три случайных значения). Из этих чисел составляется целое число, программа должна найти его квадрат.Пример:Выпало очков:1 2 3Число 123Его квадрат 15129

Задачи

«5»: Получить случайное трёхзначное число и вывести через запятую его отдельные цифры. Пример:Получено число 123сотни: 1десятки: 2единицы: 3

Ветвления

Условный оператор

Задача: изменить порядок действий в зависимости от выполнения некоторого условия.M = aa > b?M = bданетвывод Mполная форма ветвленияЕсли a = b??if a > b: M = a else: M = bотступы

Условный оператор: неполная форма

M = bb > a?данетвывод MM = aнеполная форма ветвленияM = a if b > a: M = bM = max(a, b)Решение в стиле Python:M = a if a > b else b

Условный оператор

if a < b: с = a a = b b = c Что делает??46?464ab321Можно ли обойтись без переменной c??ca, b = b, aРешение в стиле Python:

Знаки отношений

><>=<===!=больше, меньшебольше или равноменьше или равноравноне равно

Вложенные условные операторы

if a > b: print("Андрей старше") else:if a == b: print("Одного возраста")else: print("Борис старше") вложенный условный операторЗачем нужен??Задача: в переменных a и b записаны возрасты Андрея и Бориса. Кто из них старше?Сколько вариантов??

Каскадное ветвление

if a > b: print("Андрей старше") elif a == b: print("Одного возраста")else: print("Борис старше")elif = else if!

Каскадное ветвление

cost = 1500if cost < 1000: print ( "Скидок нет." )elif cost < 2000: print ( "Скидка 2%." )
elif cost < 5000: print ( "Скидка 5%." )else: print ( "Скидка 10%." )Что выведет??первое сработавшее условиеСкидка 2%.

Задачи (без функций min и max!)

«3»: Ввести два целых числа, найти наибольшее и наименьшее из них. Пример:Введите два целых числа:1 5Наибольшее число 5Наименьшее число 1«4»: Ввести четыре целых числа, найти наибольшее из них. Пример:Введите четыре целых числа:1 5 4 3Наибольшее число 5

Задачи

'5': Ввести пять чисел и найти наибольшее из них. Пример: Введите пять чисел: 4 15 9 56 4 Наибольшее число 56

Задачи

«6»: Ввести последовательно возраст Антона, Бориса и Виктора. Определить, кто из них старше. Пример:Возраст Антона: 15 Возраст Бориса: 17 Возраст Виктора: 16 Ответ: Борис старше всех.Пример:Возраст Антона: 17 Возраст Бориса: 17 Возраст Виктора: 16 Ответ: Антон и Борис старше Виктора.

Сложные условия

Задача: набор сотрудников в возрасте 25-40 лет (включительно).if : print("подходит")else: print("не подходит")andv >= 25 and v <= 40сложное условие«И»: одновременное выполнение всех условий!