ПРОГРАММИРОВАНИЕ ЛИНЕЙНЫХ АЛГОРИТМОВ
КЛЮЧЕВЫЕ СЛОВА
СТРОКОВЫЙ ТИП ДАННЫХ
СТРОКОВЫЙ ТИП ДАННЫХ
ФУНКЦИИ ОБРАБОТКИ СТРОКОВЫХ ВЕЛИЧИН
ЧИТАЕМ ПРОГРАММНЫЙ КОД
ЛОГИЧЕСКИЙ ТИП ДАННЫХ
ЛОГИЧЕСКИЙ ТИП ДАННЫХ
ЛОГИЧЕСКИЙ ТИП ДАННЫХ
БИБЛИОТЕКА graph
ГРАФИЧЕСКИЕ ПРИМИТИВЫ
ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №1
ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №2
Формула: Вычисление длины отрезка
ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №3
ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №4 (сл.33-34)
ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №5
ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №6
ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №7
ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №8
2.07M
Категория: ПрограммированиеПрограммирование

https___school.mos.ru_ej_attachments_files_221_663_263_original_8-5-3%20%D0%9D%D0%90%D0%A7%D0%90%D0%9B%D0%90%20%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC-%D0%B8%D0%B5%20%D0%9B%D0%98%D0%9D%20%D0%90%D0%9B%D0%93%20(%

1. ПРОГРАММИРОВАНИЕ ЛИНЕЙНЫХ АЛГОРИТМОВ

НАЧАЛА ПРОГРАММИРОВАНИЯ
НА ЯЗЫКЕ PYTHON

2. КЛЮЧЕВЫЕ СЛОВА

✦ линейный алгоритм
✦ вещественный тип данных
✦ целочисленный тип данных
✦ строковый тип данных
✦ логический тип данных
✦ графические примитивы

3.

Линейный алгоритм – алгоритм, все шаги которого
выполняются последовательно друг за другом.
Программы, реализующие линейные алгоритмы, являются
простейшими.
Все операторы в запрограммированном линейном алгоритме
выполняются последовательно, один за другим.

4.

ЧИСЛОВЫЕ ТИПЫ ДАННЫХ
Некоторые функции языка Python
Функция
Встроены
abs(х)
round(х)
int(х)
Назначение
Модуль x
Округление вещественного х до
заданного количества знаков после
запятой
Преобразование вещественного или
строкового х к целому
Тип аргумента
int, float
Тип результата
Такой же, как
у аргумента
float
int, float
str, float
int
Модуль math, подключение модуля: from math import *
sqrt(x)
Квадратный корень из x
int, float
float
Модуль random, подключение модуля: from random import *
randint(a,b)
Целое случайное число в
интервале [a, b]
random ()
Вещественное случайное число в
интервале [0, 1)
int
int
float

5.

ИССЛЕДОВАНИЕ ФУНКЦИЙ ROUND, INT
print ('Исследование функций round, int ')
x = float(input (' Введите х>>'))
print ('Округление - ', round(x))
print ('Целая часть - ', int(x))
Выполните программу несколько раз для
x {10,2; 10,8; –10,2; –10,8}.
Какой будет тип результата каждой из этих функций?
?

6.

ЦЕЛОЧИСЛЕННЫЙ ТИП ДАННЫХ
Операции над целыми числами:
Операция
Сложение
Вычитание
Умножение
Возведение в степень
Получение целого частного
Получение целого остатка деления
Деление
Обозначение
+
*
**
//
%
/
Тип результата
int
int
int
int
int
int
float

7.

ОПЕРАЦИИ // И %
Трёхзначное число можно представить в виде следующей суммы:
x = a·100 + b·10 + c, где а, b, с - цифры числа.
Программа нахождения суммы цифр вводимого с клавиатуры целого трёхзначного
числа:
print ('Нахождение суммы цифр трёхзначного числа');
x = int (input ('Введите исходное число>>'))
а = х // 100
b = x % 100 // 10
c = x % 10
s = a + b + c
print ('s= ', s)

8. СТРОКОВЫЙ ТИП ДАННЫХ

В тексте программы переменную строкового типа можно задать,
заключив цепочку символов в одинарные или двойные кавычки:
d = '5'
c = 'Вook'
c1 = "1*"
Новое значение может быть записано в строку с помощью
оператора ввода с клавиатуры:
s = input()
Если значение строковой переменной считывается с клавиатуры, то
его следует набирать без апострофов.

9. СТРОКОВЫЙ ТИП ДАННЫХ

✦ Строки можно сравнивать – по кодам их символов.
✦ Строки можно сцеплять: a + b (к концу строки a
прикрепляется, или «приписывается», строка b).
✦ В результате операции a * k (k — целое число)
строка a повторяется k раз.

10. ФУНКЦИИ ОБРАБОТКИ СТРОКОВЫХ ВЕЛИЧИН

11. ЧИТАЕМ ПРОГРАММНЫЙ КОД

a = input()
kod = ord(a)
print(kod)
b = chr(kod - 1) + a + chr(kod + 1)
print(b)
a = 'информация'
b = 'автоматика'
c = a[0:5] + b[4:10]
print(c)
n = len(c)
print ('n =', n)

12. ЛОГИЧЕСКИЙ ТИП ДАННЫХ

Величины логического типа принимают всего два значения:
False и True
False < True
Логические значения получаются в результате выполнения
операций сравнения числовых, строковых и логических
выражений.
В языке Python логической переменной можно присваивать
результат операции сравнения.

13. ЛОГИЧЕСКИЙ ТИП ДАННЫХ

Пусть ans - логическая переменная,
nцелая переменная.
В результате выполнения оператора присваивания
ans = n % 2 == 0
переменной ans будет присвоено значение True при любом чётном n и
False в противном случае.
ПРИМЕР
# является ли число чётным?
n = int(print ('Введите исходное число>>'))
ans = n% 2 == 0
print('Число', n, 'является чётным -', ans)

14.

ans — переменная, которая может использоваться в
программировании на Python, например, в рекурсивных
функциях.
В таком случае ans — это переменная, в которой
сохраняется результат вычисления, например, суммы
элементов списка. Например, в функции, которая принимает
на вход список g и суммирует все его элементы, ans может
быть переменной, в которой сохраняется сумма.
Важно: переменная ans не является глобальной — её
значение не назначается ни одной другой переменной.

15. ЛОГИЧЕСКИЙ ТИП ДАННЫХ

Логическим переменным можно присваивать значения
логических выражений, построенных с помощью логических
функций и (and), или (or), не (not).
Логическая операция
в Python
and
or
not
Название операции
конъюнкция (логическое умножение)
дизъюнкция (логическое сложение)
отрицание (инверсия)

16.

ЛОГИЧЕСКИЙ ТИП ДАННЫХ
# Является ли треугольник равнобедренным?
a = int(input('Введите длину стороны а>>'))
b = int(input('Введите длину стороны b>>'))
c = int(input('Введите длину стороны c>>'))
ans = a == b or а == с or b == c
print('Треугольник со сторонами', а,',', b,',', с,' является
равнобедренным –', ans)

17.

18.

# Является ли треугольник равнобедренным?
a = int(input('Введите длину стороны а>>'))
b = int(input('Введите длину стороны b>>'))
c = int(input('Введите длину стороны c>>'))
ans = a == b or а == c or b == c
print('Треугольник со сторонами', a,',', b,',', c,' является равнобедренным –', ans)
Python 3.10.6 (tags/v3.10.6:9c7b4bd, Aug 1 2022, 21:53:49) [MSC v.1932 64 bit (AMD64)]
Type "help", "copyright", "credits" or "license" for more information.
[evaluate РАВНОБЕДР. треугольник.py]
Введите длину стороны а>>10
Введите длину стороны b>>10
Введите длину стороны c>>12
Треугольник со сторонами 10 , 10 , 12 является равнобедренным – True

19. БИБЛИОТЕКА graph

Существует много разных графических Python-библиотек; мы будем
работать с библиотекой graph, позволяющей строить изображения
из графических примитивов:
✦ отрезков,
✦ прямоугольников,
✦ окружностей.
Будьте внимательны: такая система координат отличается от той,
которую вы используете на уроках математики!

20. ГРАФИЧЕСКИЕ ПРИМИТИВЫ

from graph import *
windowSize(640, 480)
canvasSize(640, 480)
rectangle(50,50,550,250)
line (100, 200, 150, 100)
line (150, 100, 200, 200)
line (200, 200, 100, 200)
circle(300,150,50)
rectangle(400,100,500,200)

21.

САМОЕ ГЛАВНОЕ
Типы данных в языке Python :
✦ вещественный
✦ целочисленный
✦ строковый
✦ логический и другие.
Для них определены соответствующие операции и
функции.
Все операторы в запрограммированном линейном
алгоритме выполняются последовательно, один за
другим.

22. ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №1

Для заданного x вычислите у по формуле
у = х3 + 2,5х2 – х +1
При этом:
а) операцию возведения в степень (**) использовать запрещено;
б) в одном операторе присваивания можно использовать не более одной
арифметической операции (сложение, умножение, вычитание);
в) в программе может быть использовано не более пяти (кроме x=0) операторов
присваивания.
Подсказка: преобразуйте выражение к следующему
виду:
y =((x + 2,5)x –1)x +1
x=0, y=
x=10, y=

23.

24.

25.

Print (“y=“, y)

26.

27.

ОПОРНЫЙ КОНСПЕКТ
Wing IDE 101 версии 8.0 от разработчика Wingware.
Wing
101
— интегрированная среда разработки для
языка Python, предназначенная для обучения базовым навыкам
программирования начинающих пользователей.
Некоторые функции программы:
•отладчик с возможностью установки точек останова;
•подсветка синтаксиса для Python, JSON, HTML;
•автодополнение кода на основе контекста и имён переменных;
•поддержка PEP 8 с функцией автоматической проверки стиля;
•простая навигация по структуре кода и определениям функций;
•история редактирования и откат действий без потери кода;
•работа с несколькими файлами одновременно;
•встроенная система справки и документации по Python.
Некоторые сайты, где можно найти и скачать Wing IDE 101
версии 8.0:
•wing-ide-101.software.informer.com;
•ru.freedownloadmanager.org.

28. ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №2

По заданным координатам точек А и В вычислите длину
отрезка АВ.
AB = √(xb - xa)² + (yb - ya)²
Пример входных данных Пример выходных данных
xa = 2
| AB | = 10.0
ya = 1
xb = 10
yb = 7

29. Формула: Вычисление длины отрезка

30.

Длина отрезка AB (расстояние между точками A и B)
вычисляется по формуле: AB = √(xb - xa)² + (yb - ya)², где:
•A(xa, ya) — координаты начальной точки отрезка;
•B(xb, yb) — координаты конечной точки отрезка.
Геометрически это представляет собой диагональ прямоугольного треугольника, где катеты — это проекции отрезка на оси
Разности (x₂ — x₁) и (y₂ — y₁) показывают, насколько
точки удалены по горизонтали и вертикали.
координат.

31.

32. ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №3

Известны длины сторон треугольника a, b, c.
Напишите программу, вычисляющую площадь этого треугольника.
Пример входных данных
a = 3
b = 4
с = 5
Пример выходных данных
s = 6.0

33. ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №4 (сл.33-34)

Известны координаты вершин A, B, C треугольника.
Напишите программу, вычисляющую площадь этого треугольника.
Пример входных данных
Пример выходных данных
xa = 2
ya = 1
xb = 6
yb = 5
xc = 10
yc = 1
s = 16.0

34.

35. ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №5

Одна компания выпустила лотерейные билеты трёх разрядов:
для молодежи, для взрослых и для стариков.
Номера билетов каждого разряда лежат в пределах:
• для молодёжи - от 1 до 100;
• для взрослых - от 101 до 200;
• для стариков - от 201 до 250.
С помощью компьютера выберите случайным образом
лотерейный билет в каждом разряде.

36. ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №6

Идёт k-я секунда суток. Разработайте программу, которая по
введённой k-й секунде суток определяет, сколько целых часов h и
целых минут m прошло с начала суток.
Например, если k =13257=3 × 3600 + 40 × 60 + 57,
то h = 3 и m = 40.
Выведите на экран фразу: It is … hours … minutes.
Вместо многоточий программа должна выводить значения h и m,
отделяя их от слов ровно одним пробелом.
Пример входных данных
13 257
Пример выходных данных
It is 3 hours 40 minutes.

37. ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №7

Даны значения целочисленных переменных:
a = 10
b = 20
Чему будет равно значение логической переменной rez
после выполнения операции присваивания?
а) rez = a == 10 or b >10
б) rez = a > 5 and b > 5 and a < 20 and b < 30
в) rez = not a < 15 or b > 20

38. ВОПРОСЫ И ЗАДАНИЯ ЗАДАЧА №8

Запишите на языке Python программу, реализующую алгоритм работы
кассира, выдающего покупателю сдачу (s) наименьшим количеством
банкнот по 500 (k500), 100 (k100), 50 (k50) и 10(k10) рублей.
Пример входных данных
845
Пример выходных данных
Следует сдать:
банкнот по 500 руб. – 1 шт.
банкнот по 100 руб. – 3 шт.
банкнот по 50 руб. – 0 шт.
банкнот по 10 руб. – 4 шт.

39.

ОПОРНЫЙ КОНСПЕКТ
ЛИНЕЙНЫЙ АЛГОРИТМ
ЛИНЕЙНАЯ ПРОГРАММА
РАБОТА С ВЕЛИЧИНАМИ
Вещественные
Числовые
Целые
Символьные
Логические
abs (x), int(x)
sqrt (x), +, -, *, /
s = "привет "; a = " Вася "; c = s + a
and, or, not
English     Русский Правила