- Алгоритмы и структуры данных на Python
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- Презентация на тему Алгоритмы и структуры данных на Python
- Слайд 1Введение в алгоритмизацию и реализация простых алгоритмов
- на Python.
- Слайд 2Регламент урока Время урока — 1.5 часа Домашние задания Видеозапись
- будет Вопросы – в специальное время.
- Слайд 3Вопросы Что такое алгоритмизация?
- Слайд 4Цели урока Изучить основные понятия алгоритмизации
- алгоритмов
- Слайд 5План урока
- Слайд 6Понятие алгоритма Алгоритм – это последовательность чётко определенных
- действий, выполнение которых ведёт к решению задачи.
- Слайд 7Каким должен быть алгоритм
- Слайд 8Способы представления алгоритма Словесный Графический Программный a = int(input()) b = int(input()) c
- = int(input()) m = a if m
- Слайд 9Блок-схема
- Слайд 10Виды алгоритмов
- Слайд 11Задача 1. Нахождение максимума из трех чисел Пусть a,
- b, c — переменные, которым присваиваются введенные числа,
- Слайд 12Задача 1. Нахождение максимума из трех чисел
- Слайд 13Задача 1. Нахождение максимума из трех чисел Данную
- задачу можно решить и без использования четвертой
- Слайд 14Задача 1. Нахождение максимума из трех чисел
- Слайд 15Задача 2. Вычислить значение функции y=f(x) Дана следующая
- функция y=f(x): y = 2x — 10, если x
- Слайд 16Задача 2. Вычислить значение функции y=f(x)
- Слайд 17Задача 3. Проверка делимости одного числа на
- другое Вводятся два целых числа. Проверить делится ли
- Слайд 18Задача 3. Проверка делимости одного числа на
- другое
- Слайд 19Задача 4. Перевести байты в килобайты или
- наоборот
- Слайд 20Задача 4. Перевести байты в килобайты или
- наоборот
- Слайд 21Домашнее задание Для каждого упражнения составить словесное и
- графическое представление алгоритма и написать программную реализацию.
Алгоритмы и структуры данных на Python
Блок-схема
Таблица 1.2. Базовые элементы блок-схемы
Название
Терминатор
Процесс
Решение
Предопределенные
процесс
Данные
Соединитель
Комментарий
Обозначение
Функция
Отображает вход из внешней среды или выход из нее
(наиболее частое применение − обозначение начала и
конца алгоритма)
Выполнение одной или нескольких операций,
обработка данных любого вида, изменение данных.
Внутри фигуры записывают операции над данными.
Отображает решение, влияющее на дальнейшее
выполнение
алгоритма.
Используется
для
обозначения альтернативных ветвей выполнения
алгоритма.
Символ отображает выполнение процесса, который
определен в другом месте программы (обычно
используется для обозначения вызова функций).
Используется для обозначения операций вводавывода.
Символ обозначает выход в часть схемы и вход из
другой части этой схемы. Используется для обрыва
линии и продолжения ее в другом месте (пример:
разделение блок- схемы, не помещающейся на
листе).
Используется для более подробного описания шага,
процесса или группы процессов
10.
11.
Задача 1. Нахождение
максимума из трех чисел
Пусть a, b, c — переменные, которым
присваиваются
введенные
числа,
а
переменная m в конечном итоге должна будет
содержать значение наибольшей переменной.
Тогда алгоритм программы сведется
к
следующим шагам:
Шаг
1.
Сначала
предположим,
что
переменная a содержит наибольшее значение.
Присвоим его переменной m.
Шаг 2. Если текущее
значение m меньше, чем у b, то следует
присвоить m значение b. Если это не так, то не
изменять значение m.
Шаг 3. Если текущее
значение
m
меньше,
чем
у
c,
то
присвоить m значение c. Иначе ничего не
делать.
12.
Задача 1. Нахождение
максимума из трех чисел
# 1-й вариант:
a = int(input())
b = int(input())
c = int(input())
m = a
if m < b:
m = b
if m < c:
m = c
print(m)
13.
Задача 1. Нахождение
максимума из трех чисел
Данную задачу можно решить и
без использования четвертой
переменной, однако программа
будет логически сложнее и
будет состоять из следующих
шагов:
Шаг 1. Если a больше b, то
проверить больше ли a, чем c.
Если это так, то максимальное
число содержит переменная a.
Если a больше b, но при этом
меньше c, то максимальным
является значение c.
Шаг 2. Иначе (когда a меньше b)
сравнить значения b и c.
Большее из них и есть
максимальное.
14.
Задача 1. Нахождение
максимума из трех чисел
# 2-й вариант:
a = int(input())
b = int(input())
c = int(input())
if a > b:
if a > c:
print(a)
else:
print(c)
else:
if b > c:
print(b)
else:
print(c)
15.
Задача 2. Вычислить значение
функции y=f(x)
Дана следующая функция y=f(x):
y = 2x — 10, если x > 0
y = 0, если x = 0
y = 2 * |x| — 1, если x < 0
Требуется найти значение функции по переданному x.
Алгоритм решения задачи сводится к следующим шагам:
Шаг 1. Получить с клавиатуры значение x.
Шаг 2. Если x больше 0, то вычислить выражение 2*x-10, результат
присвоить переменной y.
Шаг 2.1. Иначе если x равен 0, то присвоить y значение 0.
Шаг 2.2. Иначе присвоить y результат выражения 2*|x|-1.
Шаг 3. Вывести значение y на экран.
16.
Задача 2. Вычислить значение
функции y=f(x)
x = input()
x = int(x)
if x > 0:
y = 2 * x — 10
elif x == 0:
y = 0
else:
y = 2 * abs(x) — 1
print(y)
17.
Задача 3. Проверка делимости
одного числа на другое
Вводятся два целых числа.
Проверить делится ли первое на
второе. Вывести на экран
сообщение об этом, а также
остаток (если он есть) и частное (в
любом случае).
Алгоритм решения задачи
сводится к следующим шагам:
Шаг 1. Если первое число нацело
делится на второе, то вывести
сообщение об этом.
Шаг 2. Иначе вывести сообщение
о том, что первое число не
делится на второе, найти остаток
от деления и также вывести его.
Шаг 3. В конце программы найти
частное от деления чисел и
вывести его.
18.
Задача 3. Проверка делимости
одного числа на другое
a = int(input())
b = int(input())
if a%b == 0:
print(«%d делится на %d» % (a,b))
else:
print(«%d не делится на %d» % (a,b))
print(«Остаток: %d» % (a%b))
print(«Частное: %d» % (a//b))
19.
Задача 4. Перевести байты в
килобайты или наоборот
Перевести число, введенное
пользователем, в байты или килобайты в
зависимости от его выбора.
Алгоритм решения задачи сводится к
следующим шагам:
В данной задаче пользователь
должен ввести два значения: само число
и как-либо указать, во что он хочет его
перевести (в байты или килобайты).
Пусть выбор способа перевода
указывается с помощью одного из двух
символов. Например, если пользователь
введет букву «b», то число будет
переводиться в байты, а если букву «k»,
то в килобайты. Тогда алгоритм решения
задачи будет следующим:
Шаг 1. Ввести число.
Шаг 2. Указать направление
перевода.
Шаг 3. Если выбран перевод в байты,
то надо умножить число на 1024.
Шаг 4. Если выбран перевод в
килобайты, то надо разделить число на
1024.
20.
Задача 4. Перевести байты в
килобайты или наоборот
n = int(input(«Число: «))
c = input(«Перевести в байты (b) или килобайты (k): «)
if c == ‘b’:
print(«%dКб = %d байт» % (n, n*1024))
elif c == ‘k’:
print(«%d байт = %.2fКб» % (n, n/1024))
21.
Домашнее задание
Для каждого упражнения составить словесное и графическое представление алгоритма и написать программную
реализацию.
1. Найти сумму и произведение цифр трехзначного числа, которое вводит пользователь.
2. Выполнить логические побитовые операции «И», «ИЛИ» и др. над числами 5 и 6. Выполнить над числом 5
побитовый сдвиг вправо и влево на два знака. Объяснить полученный результат.
3. По введенным пользователем координатам двух точек вывести уравнение прямой, проходящей через эти точки.
4. Написать программу, которая генерирует в указанных пользователем границах случайное целое число,
случайное вещественное число, случайный символ.
5. Для каждого из трех случаев пользователь задает свои границы диапазона. Например, если надо получить
случайный символ от ‘a’ до ‘f’, то вводятся эти символы. Программа должна вывести на экран любой символ
алфавита от ‘a’ до ‘f’ включительно.
6. Пользователь вводит две буквы. Определить, на каких местах алфавита они стоят, и сколько между ними
находится букв.
7. Пользователь вводит номер буквы в алфавите. Определить, какая это буква.
8. По длинам трех отрезков, введенных пользователем, определить возможность существования треугольника,
составленного из этих отрезков. Если такой треугольник существует, то определить, является ли он
равносторонним, равнобедренным или равносторонним.
9. Определить, является ли год, который ввел пользователем, високосным или не високосным.
10.Вводятся три разных числа. Найти, какое из них является средним (больше одного, но меньше другого).
Презентация на тему Алгоритмы и структуры данных на Python
Регламент урока Время урока — 1.5 часа Домашние задания Видеозапись будет Вопросы – в специальное время.
Слайд 1Введение в алгоритмизацию и реализация простых алгоритмов
на Python.
Введение в алгоритмизацию. Решение практических задач.
Алгоритмы
Слайд 2Регламент урока
Время урока — 1.5 часа
Домашние задания
Видеозапись
будет
Вопросы – в специальное время.
Слайд 3Вопросы
Что такое алгоритмизация?
2. Способы представления алгоритмов.
3. Разбор простых алгоритмов.
Слайд 4Цели урока
Изучить основные понятия алгоритмизации
Изучить способы представления
алгоритмов
Практика разработки простых алгоритмов
Слайд 5План урока
Слайд 6Понятие алгоритма
Алгоритм – это последовательность чётко определенных
действий, выполнение которых ведёт к решению задачи.
Слайд 7Каким должен быть алгоритм
Слайд 8Способы представления алгоритма
Словесный
Графический
Программный
a = int(input()) b = int(input()) c
= int(input()) m = a if m
Слайд 9Блок-схема
Слайд 10Виды алгоритмов
Слайд 11Задача 1. Нахождение максимума из трех чисел
Пусть a,
b, c — переменные, которым присваиваются введенные числа,
а переменная m в конечном итоге должна будет содержать значение наибольшей переменной. Тогда алгоритм программы сведется к следующим шагам:
Шаг 1. Сначала предположим, что переменная a содержит наибольшее значение. Присвоим его переменной m.
Шаг 2. Если текущее
значение m меньше, чем у b, то следует
присвоить m значение b. Если это не так, то не изменять значение m.
Шаг 3. Если текущее
значение m меньше, чем у c, то присвоить m значение c. Иначе ничего не делать.
Слайд 12Задача 1. Нахождение максимума из трех чисел
Слайд 13Задача 1. Нахождение максимума из трех чисел
Данную
задачу можно решить и без использования четвертой
переменной, однако программа будет логически сложнее и будет состоять из следующих шагов:
Шаг 1. Если a больше b, то проверить больше ли a, чем c. Если это так, то максимальное число содержит переменная a. Если a больше b, но при этом меньше c, то максимальным является значение c.
Шаг 2. Иначе (когда a меньше b) сравнить значения b и c. Большее из них и есть максимальное.
Слайд 14Задача 1. Нахождение максимума из трех чисел
Слайд 15Задача 2. Вычислить значение функции y=f(x)
Дана следующая
функция y=f(x): y = 2x — 10, если x
Слайд 16Задача 2. Вычислить значение функции y=f(x)
Слайд 17Задача 3. Проверка делимости одного числа на
другое
Вводятся два целых числа. Проверить делится ли
первое на второе. Вывести на экран сообщение об этом, а также остаток (если он есть) и частное (в любом случае).
Алгоритм решения задачи сводится к следующим шагам:
Шаг 1. Если первое число нацело делится на второе, то вывести сообщение об этом.
Шаг 2. Иначе вывести сообщение о том, что первое число не делится на второе, найти остаток от деления и также вывести его.
Шаг 3. В конце программы найти частное от деления чисел и вывести его.
Слайд 18Задача 3. Проверка делимости одного числа на
другое
Слайд 19Задача 4. Перевести байты в килобайты или
наоборот
Перевести число, введенное пользователем, в байты или
килобайты в зависимости от его выбора.
Алгоритм решения задачи сводится к следующим шагам:
В данной задаче пользователь должен ввести два значения: само число и как-либо указать, во что он хочет его перевести (в байты или килобайты). Пусть выбор способа перевода указывается с помощью одного из двух символов. Например, если пользователь введет букву «b», то число будет переводиться в байты, а если букву «k», то в килобайты. Тогда алгоритм решения задачи будет следующим:
Шаг 1. Ввести число.
Шаг 2. Указать направление перевода.
Шаг 3. Если выбран перевод в байты, то надо умножить число на 1024.
Шаг 4. Если выбран перевод в килобайты, то надо разделить число на 1024.
Слайд 20Задача 4. Перевести байты в килобайты или
наоборот
Слайд 21Домашнее задание
Для каждого упражнения составить словесное и
графическое представление алгоритма и написать программную реализацию.
сумму и произведение цифр трехзначного числа, которое вводит пользователь.
Выполнить логические побитовые операции «И», «ИЛИ» и др. над числами 5 и 6. Выполнить над числом 5 побитовый сдвиг вправо и влево на два знака. Объяснить полученный результат.
По введенным пользователем координатам двух точек вывести уравнение прямой, проходящей через эти точки.
Написать программу, которая генерирует в указанных пользователем границах случайное целое число, случайное вещественное число, случайный символ.
Для каждого из трех случаев пользователь задает свои границы диапазона. Например, если надо получить случайный символ от ‘a’ до ‘f’, то вводятся эти символы. Программа должна вывести на экран любой символ алфавита от ‘a’ до ‘f’ включительно.
Пользователь вводит две буквы. Определить, на каких местах алфавита они стоят, и сколько между ними находится букв.
Пользователь вводит номер буквы в алфавите. Определить, какая это буква.
По длинам трех отрезков, введенных пользователем, определить возможность существования треугольника, составленного из этих отрезков. Если такой треугольник существует, то определить, является ли он равносторонним, равнобедренным или равносторонним.
Определить, является ли год, который ввел пользователем, високосным или не високосным.
Вводятся три разных числа. Найти, какое из них является средним (больше одного, но меньше другого).