Similar presentations:
Python оператор ввода и вывода (с конвертацией)
1.
1Программирование
на языке Python
Введение в язык Python
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
2.
Алгоритмы и программирование, язык Python, 10 класс2
Простейшая программа
# Это пустая программа
? Что делает эта программа?
комментарии после #
не обрабатываются
кодировка utf-8
по умолчанию)
# -*- coding: utf-8 -*# Это пустая программа Windows: cp1251
"""
Это тоже комментарий
"""
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
3.
Алгоритмы и программирование, язык Python, 10 класс3
Вывод на экран
print ( "2+2=?" )
print ( "Ответ: 4" )
автоматический
переход на новую
строку
Протокол:
2+2=?
Ответ: 4
К.Ю. Поляков, Е.А. Ерёмин, 2025
print ( '2+2=?' )
print ( 'Ответ: 4' )
http://kpolyakov.spb.ru
4.
Алгоритмы и программирование, язык Python, 10 класс4
Сложение чисел
Задача. Ввести с клавиатуры два числа и найти их сумму.
Протокол:
Введите два целых числа
25 30
пользователь
25+30=55
компьютер
компьютер считает сам!
? 1. Как ввести числа в память?
2. Где хранить введенные числа?
3. Как вычислить?
4. Как вывести результат?
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
5.
Алгоритмы и программирование, язык Python, 10 класс5
Сумма: псевдокод
ввести два числа
вычислить их сумму
вывести сумму на экран
Псевдокод – алгоритм на
русском языке с элементами
языка программирования.
! Компьютер не может исполнить псевдокод!
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
6.
Алгоритмы и программирование, язык Python, 10 класс6
Переменные
Переменная – это величина, имеющая имя, тип
и значение. Значение переменной можно
изменять во время работы программы.
Значение
Имя
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
7.
Алгоритмы и программирование, язык Python, 10 класс7
Имена переменных
МОЖНО использовать
• латинские буквы (A-Z, a-z)
заглавные и строчные буквы различаются
• русские буквы (не рекомендуется!)
• цифры
имя не может начинаться с цифры
• знак подчеркивания _
Какие имена правильные?
AXby R&B 4Wheel Вася “PesBarbos”
TU154 [QuQu] _ABBA A+B
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
8.
Алгоритмы и программирование, язык Python, 10 класс8
Как записать значение в переменную?
! При записи нового значения
оператор
присваивания
a = 5
a = 7
старое удаляется из памяти!
a
5
сборка
мусора
7
Оператор – это команда языка
программирования (инструкция).
Оператор присваивания – это команда для
записи нового значения переменной.
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
9.
Алгоритмы и программирование, язык Python, 10 класс9
Переменные в Python
a = 5
print(id(a))
a = 4.5
Имя Ссылка
a
5
158970544496
Имя Ссылка
a
сборка
мусора
5
4.5
print(id(a))
К.Ю. Поляков, Е.А. Ерёмин, 2025
158970544560
http://kpolyakov.spb.ru
10.
Алгоритмы и программирование, язык Python, 10 класс10
Переменные в Python
b = a
Имя Ссылка
a
b
4.5
print(id(b))
158970544560
a = 10
Имя Ссылка
a
10
b
4.5
print(id(a))
К.Ю. Поляков, Е.А. Ерёмин, 2025
158970544656
http://kpolyakov.spb.ru
11.
Алгоритмы и программирование, язык Python, 10 класс11
Ввод значения с клавиатуры
a
5
! 1. Программа ждет, пока пользователь введет
значение и нажмет Enter.
2. Введенное значение записывается в
переменную a (связывается с именем a)
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
12.
Алгоритмы и программирование, язык Python, 10 класс12
Ввод значения с клавиатуры
a = input()
b = input()
ввести строку с клавиатуры
и связать с переменной a
Протокол:
21
33
2133
с=a + b
print ( c )
? Почему?
! Результат функции input – строка символов!
преобразовать в
целое число
a = int( input() )
b = int( input() )
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
13.
Алгоритмы и программирование, язык Python, 10 класс13
Ввод двух значений в одной строке
a, b = map ( int, input().split() )
21 33 input()
ввести строку с клавиатуры
21 33 input().split()
целые
применить
разделить строку на
части по пробелам
21 33 map ( int, input().split() )
эту
операцию
к каждой части
a, b = map ( int, input().split() )
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
14.
Алгоритмы и программирование, язык Python, 10 класс14
Ввод с подсказкой
a = input ( "Введите число: " )
Введите число: 26
подсказка
? Что не так?
a = int( input("Введите число: ") )
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
15.
Алгоритмы и программирование, язык Python, 10 класс15
Изменение значений переменной
a = 5
b = a + 2
a = (a + 2)*(b – 3)
b = b + 1
28
a
b
=(5+2)*(7-3)
5
7
=5+2
8
=7+1
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
16.
Алгоритмы и программирование, язык Python, 10 класс16
Вывод данных
print ( a )
значение
переменной
значение и
текст
print ( "Ответ: ", a )
перечисление через запятую
print ( "Ответ: ", a+b )
вычисление
выражения
print ( a, "+", b, "=", c )
2 + 3 = 5
через пробелы
print ( a, "+", b, "=", c, sep = "" )
2+3=5
К.Ю. Поляков, Е.А. Ерёмин, 2025
убрать разделители
http://kpolyakov.spb.ru
17.
Алгоритмы и программирование, язык Python, 10 класс17
Сложение чисел: простое решение
a = int ( input() )
b = int ( input() )
c=a+b
print ( c )
? Что плохо?
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
18.
Алгоритмы и программирование, язык Python, 10 класс18
Сложение чисел: полное решение
print ( "Введите два числа: " )
a = int ( input() )
подсказка
b = int ( input() )
c=a+b
print ( a, "+", b, "=", c )
Протокол:
компьютер
Введите два целых числа
25 30
пользователь
25 + 30 = 55
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
19.
Алгоритмы и программирование, язык Python, 10 класс19
Форматный вывод
a = 25
b = 30
print( f"{a}+{b}={a+b}" )
25+30=55
5 знаков на число
a = 5
print ( f"{a:5}{a*a:5}{a*a*a:5}" )
5
25
125
5 знаков 5 знаков 5 знаков
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
20.
Алгоритмы и программирование, язык Python, 10 класс20
Типы переменных
• int
• float
• bool
• str
# целое
# вещественное
# логические значения
# символьная строка
a=5
print ( type(a) )
a = 4.5
print ( type(a) )
a = True # False
print ( type(a) )
a = "Вася"
print ( type(a) )
К.Ю. Поляков, Е.А. Ерёмин, 2025
<class 'int'>
<class 'float'>
<class 'bool'>
<class 'str'>
http://kpolyakov.spb.ru
21.
Алгоритмы и программирование, язык Python, 10 класс21
Зачем нужен тип переменной?
Тип определяет:
• область допустимых значений
• допустимые операции
• объём памяти
• формат хранения данных
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
22.
Алгоритмы и программирование, язык Python, 10 класс22
Конвертация типов
a = "5"
b = int(a) # число 5
c = float(a) # число 5.0
d = bool(a) # True
a = "5.0"
b = int(a) # число 5
c = float(a) # число 5.0
d = bool(a) # True
a = ""
b = int(a) # Ошибка!!
c = float(a) # Ошибка!!
d = bool(a) # False
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
23.
Алгоритмы и программирование, язык Python, 10 класс23
Конвертация типов
a=5
b = str(a) # текст "5"
c = float(a) # число 5.0
d = bool(a) # True
a = 5.0
b = int(a) # число 5
c = str(a) # текст "5.0"
d = bool(a) # True
a=0
b = str(a) # текст "0"
c = float(a) # число 0.0
d = bool(a) # False
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
24.
Алгоритмы и программирование, язык Python, 10 класс24
Арифметическое выражения
3
1
2
4
5
6
a = (c + b**5*3 - 1) / 2 * d
Приоритет (старшинство):
1)скобки
2)возведение в степень **
3)умножение и деление
4)сложение и вычитание
a = (c + b*5*3 - 1) \
/2*d
a = (c + b*5*3
- 1) / 2 * d
К.Ю. Поляков, Е.А. Ерёмин, 2025
c+b5⋅ 3− 1
a=
⋅d
2
перенос на
следующую строку
перенос внутри
скобок разрешён
http://kpolyakov.spb.ru
25.
Алгоритмы и программирование, язык Python, 10 класс25
Деление
Классическое деление:
a = 9; b = 6
x = 3 / 4
# = 0.75
x = a / b
# = 1.5
x = -3 / 4 # = -0.75
x = -a / b # = -1.5
Целочисленное деление (округление «вниз»!):
a = 9; b = 6
x = 3 // 4
# = 0
x = a // b
# = 1
x = -3 // 4 # = -1
x = -a // b # = -2
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
26.
Алгоритмы и программирование, язык Python, 10 класс26
Сокращенная запись операций
a += b # a = a + b
a -= b # a = a - b
a *= b # a = a * b
a /= b # a = a / b
a //= b # a = a // b
a %= b # a = a % b
a += 1
увеличение на 1
Множественное присваивание:
a = b = 0
a, b = 1, 2
К.Ю. Поляков, Е.А. Ерёмин, 2025
# b = 0, a = b
# a = 1; b = 2
http://kpolyakov.spb.ru
27.
Алгоритмы и программирование, язык Python, 10 класс27
Сложение чисел
Задача. Ученик решает в день k задач. За сколько дней
он решит N задач.
Протокол 1:
Введите два целых числа
25 4
7 дней
Протокол 2:
Введите два целых числа
25 5
5 дней
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
28.
Алгоритмы и программирование, язык Python, 10 класс28
Изменение значений переменной
k, N = map(int, input().split())
result = N // k + {прибавить 1 если есть
остаток или не прибавлять}
print(result)
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
29.
Алгоритмы и программирование, язык Python, 10 класс29
Изменение значений переменной
k, N = map(int, input().split())
result = N // k + bool(N % k) * 1
print(result)
К.Ю. Поляков, Е.А. Ерёмин, 2025
http://kpolyakov.spb.ru
programming