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

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

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

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

Добавлен: 30.11.2023

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

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

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

СОДЕРЖАНИЕ

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

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

Вычисления

Ветвления

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

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

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

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

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

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

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

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

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

TURTLE

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

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

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

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

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

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

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

Задания

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

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

Переменные

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

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

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

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

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

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

Вывод данных

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

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

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

Задания

Задания

Вычисления

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

Деление

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

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

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

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

Задания

Задания

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

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

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

Задачи

Задачи

Ветвления

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

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

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

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

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

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

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

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

Задачи

Задачи

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

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

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

Задачи

Задачи

Задачи

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

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

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

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

Срезы

Срезы строк

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

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

Задачи

Задачи

Задачи

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

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

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

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

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

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

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

Задачи

Задачи

Задачи

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

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

Задачи

Задачи

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

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

Задачи

Задачи

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

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

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

Задачи

Задачи

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

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

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

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

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

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

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

Задачи

Задачи

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

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

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

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

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

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

Задачи

Задачи

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

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

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

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

Задачи

Задачи

Задачи

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

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

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

Задачи

Конец фильма

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

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

Вычисления

Ветвления

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

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

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

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

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

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


Мухаммед ал-Хорезми

(ок. 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

перенос внутри скобок разрешён