Файл: Алгоритм и его свойства Простейшие программы Вычисления Ветвления Символьные строки Циклические алгоритмы Массивы (списки) Поиск в массиве Алгоритм и его свойства Что такое алгоритм.pptx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 30.11.2023
Просмотров: 247
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
Координатное поле окна для рисования
Как организовать цикл (36 повторений)?
Как записать значение в переменную?
Сложение чисел: простое решение
Сложение чисел: полное решение
Ввод двух значений в одной строке
Линейный конгруэнтный генератор
Условный оператор: неполная форма
Алгоритм и его свойства
Простейшие программы
Вычисления
Ветвления
Символьные строки
Циклические алгоритмы
Массивы (списки)
Поиск в массиве
Алгоритм и его свойства
Что такое алгоритм?
Мухаммед ал-Хорезми
(ок. 783–ок. 850 гг.)
Алгоритм — это точное описание порядка действий, которые должен выполнить исполнитель для решения задачи за конечное время.
Исполнитель – это устройство или одушёвленное существо (человек), способное понять и выполнить команды, составляющие алгоритм.
Формальные исполнители: не понимают (и не могут понять) смысл команд.
Свойства алгоритма
Дискретность — алгоритм состоит из отдельных команд, каждая из которых выполняется за конечное время.
Детерминированность (определённость) — при каждом запуске алгоритма с одними и теми же исходными данными получается один и тот же результат.
Понятность — алгоритм содержит только команды, входящие в систему команд исполнителя.
Конечность (результативность) — для корректного набора данных алгоритм должен завершаться через конечное время.
Корректность — для допустимых исходных данных алгоритм должен приводить к правильному результату.
Массовость — алгоритм можно использовать для разных исходных данных.
Введение в язык Python
Черепашья графика
trinket.io – бесплатный сайт для изучения Питон, позволяющий исполнять программы в браузере.
Для регистрации своего аккаунта используйте меню Sign Up.
Введите: - полное имя; - имя пользователя (login); - адрес почты; - пароль
Нажмите Sign Up
Для выполнения нового проекта в trinket.io используйте меню Home. Затем выберите New Trinket и Python.
Рабочее окно включает редактор программы и рабочее поле (окно) для рисования.
TURTLE
Библиотека turtle –это расширение системы команд языка Питон, позволяющее рисовать на экране несложные рисунки.
При обращении к командам библиотеки рисование ведется в рабочем поле (окне) для рисования Python Turtle Graphics
Первоначально черепашка направлена вправо
Основные команды рисования:
turtle.down() опустить перо
turtle.up() поднять перо
turtle.forward(n) вперед на n шагов
turtle.backward(n) назад на n шагов
turtle.left(a) налево на a градусов
turtle.right(a) направо на a градусов
turtle.circle(r) нарисовать окружность радиуса r
turtle.goto(x,y) перейти в точку с координатами x,y
turtle.fill(1) turtle.fill(0) начать/закончить закрашенную область
Команды управления:
import turtle подключить библиотеку
turtle.width(n) установить ширину линии n
turtle.сolor(c) установить цвет линии c
turtle.reset() очистить экран, вернуться в центр
turtle.сlear() очистить экран
turtle.write(s) вывести текст s в точке нахождения черепашки
Примеры наименований цветов s:
"red", "yellow", "green", "blue", "cyan", "black", "white",
Координатное поле окна для рисования
Окно для рисования имеет размеры 400 х 400 точек
Точка с координатами 0,0 находится в центре
Задания для рисования
Задание 1
Нарисуйте любое из показанных изображений
Задание 2
Нарисуйте сложный рисунок
Задание 2
Нарисуйте цифры для индекса на конверте
Как организовать цикл (36 повторений)?
счётчик = 0
пока счётчик < 36:
рисуй луч вперед
рисуй луч назад
поверни направо на 10◦
увеличь счётчик на 1
import turtle
k = 0
while k < 36:
turtle.forward(90)
turtle.backward(90)
turtle.right(10)
k = k + 1
отступ в 4 пробела
Задание 1
Нарисуйте любое из показанных изображений
Задание 2
Нарисуйте сложный рисунок
Задание 2
Нарисуйте цветы
Задание 4
Нарисуйте циферблат и двигающуюся стрелку секундомера
Задание 5
Используя переменные, нарисуйте ракушку
Координатное поле
Простейшие программы
Простейшая программа
# Это пустая программа
Что делает эта программа?
?
комментарии после # не обрабатываются
# coding: utf-8
# Это пустая программа
кодировка utf-8 по умолчанию)
"""
Это тоже комментарий
"""
Вывод на экран
print ( "2+2=?" )
print ( "Ответ: 4" )
Протокол:
2+2=?
Ответ: 4
автоматический переход на новую строку
print ( '2+2=?' )
print ( 'Ответ: 4' )
Задания
«4»: Вывести на экран текст «лесенкой»
Вася
пошел
гулять
«5»: Вывести на экран рисунок из букв
Ж
ЖЖЖ
ЖЖЖЖЖ
ЖЖЖЖЖЖЖ
HH HH
ZZZZZ
Сложение чисел
Задача. Ввести с клавиатуры два числа и найти их сумму.
Протокол:
Введите два целых числа
25
30
25+30=55
компьютер
пользователь
компьютер считает сам!
- Как ввести числа в память?
- Где хранить введенные числа?
- Как вычислить?
- Как вывести результат?
?
Сумма: псевдокод
ввести два числа
вычислить их сумму
вывести сумму на экран
Псевдокод – алгоритм на русском языке с элементами языка программирования.
Компьютер не может исполнить псевдокод!
!
Переменные
Переменная – это величина, имеющая имя, тип и значение. Значение переменной можно изменять во время работы программы.
a
Значение
Имя
Имена переменных
МОЖНО использовать
- латинские буквы (A-Z, a-z)
- русские буквы (не рекомендуется!)
- цифры
- знак подчеркивания _
заглавные и строчные буквы различаются
НЕЛЬЗЯ использовать
скобкизнаки +, =, !, ? и др.
имя не может начинаться с цифры
Какие имена правильные?
AXby R&B 4Wheel Вася “PesBarbos” TU154 [QuQu] _ABBA A+B
Типы переменных
a = 4
print ( type(a) )
целое число (integer)
a = 4.5
print ( type(a) )
вещественное число
a = "Вася"
print ( type(a) )
символьная строка
a = True
print ( type(a) )
логическая
Зачем нужен тип переменной?
Тип определяет:
- область допустимых значений
- допустимые операции
- объём памяти
- формат хранения данных
Как записать значение в переменную?
a = 5
оператор присваивания
При записи нового значения старое удаляется из памяти!
!
5
Оператор – это команда языка программирования (инструкция).
Оператор присваивания – это команда для присваивания нового значения переменной.
a
a = 7
7
- Программа ждет, пока пользователь введет значение и нажмет Enter.
- Введенное значение записывается в переменную a (связывается с именем a)
!
5
a
a = input()
ввести строку с клавиатуры и связать с переменной a
b = input()
с = a + b
print ( c )
Протокол:
21
33
2133
Почему?
?
Результат функции input – строка символов!
!
a = int( input() )
b = int( input() )
преобразовать в целое число
Ввод с подсказкой
a = input ( "Введите число: " )
подсказка
Введите число:
26
Что не так?
?
a = int( input("Введите число: ") )
Изменение значений переменной
a = 5
b = a + 2
a = (a + 2)*(b – 3)
b = b + 1
a
5
b
=5+2
7
28
=(5+2)*(7-3)
=7+1
8
Вывод данных
print ( a )
значение переменной
print ( "Ответ: ", a )
значение и текст
перечисление через запятую
print ( "Ответ: ", a+b )
вычисление выражения
print ( a, "+", b, "=", c )
2 + 3 = 5
через пробелы
print ( a, "+", b, "=", c, sep = "" )
2+3=5
sep = ""
убрать разделители
Вывод данных через format
print ( a, "+", b, "=", c, sep = "" )
2+3=5
print ( "{}+{}={}".format(a, b, c ) )
Сложение чисел: простое решение
a = int ( input() )
b = int ( input() )
c = a + b
print ( c )
Что плохо?
?
Сложение чисел: полное решение
print ( "Введите два числа: " )
a = int ( input() )
b = int ( input() )
c = a + b
print ( a, "+", b, "=", c, sep="" )
Протокол:
Введите два целых числа
25
30
25+30=55
компьютер
пользователь
подсказка
Задания
«3»: Ввести три числа, найти их сумму.
Пример:
Введите три числа:
4
5
7
4+5+7=16
«4»: Ввести три числа, найти их сумму и произведение.
Пример:
Введите три числа:
4
5
7
4+5+7=16
4*5*7=140
Задания
«5»: Ввести три числа, найти их сумму, произведение и среднее арифметическое.
Пример:
Введите три числа:
4
5
7
4+5+7=16
4*5*7=140
(4+5+7)/3=5.333333
Вычисления
Арифметическое выражения
a = (c + b**5*3 - 1) / 2 * d
Приоритет (старшинство):
- скобки
- возведение в степень **
- умножение и деление
- сложение и вычитание
1
2
3
4
5
6
a = (c + b*5*3 - 1) \
/ 2 * d
\
перенос на следующую строку
a = (c + b*5*3
- 1) / 2 * d
перенос внутри скобок разрешён