Similar presentations:
Программирование (Python), 8 класс
1. Вывод на экран
Программирование (Python), 8 класс1
Вывод на экран
оператор
вывода
Оператор — это команда
языка программирования.
print( "Привет!" )
print( "Привет", Вася! )
? Что плохо?
print( "Привет, Вася!" )
вся строка в
кавычках
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
2. Переход на новую строку
Программирование (Python), 8 класс2
Переход на новую строку
print( "Привет, Вася!" )
print( "Привет, Петя!" )
Результат:
Привет, Вася!
Привет, Петя!
переход на новую
строку автоматически
Нужно в одной строке:
Привет, Вася!Привет, Петя!
Решение:
print( "Привет, Вася!", end="" )
print( "Привет, Петя!" )
после вывода данных
ничего не выводить
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
3. Ввод с клавиатуры
Программирование (Python), 8 класс3
Ввод с клавиатуры
a = input()
b = input()
ввести строку с клавиатуры
и связать с переменной a
Протокол:
21
33
2133
с = a + b
print ( c )
? Почему?
! Результат функции input – строка символов!
преобразовать в
целое число
a = int( input() )
b = int( input() )
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
4. Ввод с подсказкой
Программирование (Python), 8 класс4
Ввод с подсказкой
Введите число: 26
a = input( "Введите число: " )
?
подсказка
Что не так?
a = int( input("Введите число: ") )
? Что будет?
преобразовать
в целое число
Введите число: Qu-Qu
ValueError: invalid literal for int() with base 10: 'Qu-Qu'
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
5. Ввод вещественных чисел
Программирование (Python), 8 класс5
Ввод вещественных чисел
print( "Введите число:" )
x = float (input())
или так:
x = float (input("Введите число:"))
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
6. Вывод данных с текстом
Программирование (Python), 8 класс6
Вывод данных с текстом
значение a
значение b
значение с
5+7=12
текст
print(a, "+", b, "=", c)
ожидание:
реальность:
5+7=12
5 + 7 = 12
это пробелы не заказывали!
print(a, "+", b, "=", c, sep="" )
separator
К.Ю. Поляков, Е.А. Ерёмин, 2018
пустой
http://kpolyakov.spb.ru
7. Ввод двух чисел в одной строке
Программирование (Python), 8 класс7
Ввод двух чисел в одной строке
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() )
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
8. Деление
Программирование (Python), 8 класс8
Деление
Классическое деление:
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
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
9. Частное и остаток
Программирование (Python), 8 класс9
Частное и остаток
// – деление нацело (остаток отбрасывается)
% – остаток от деления
175 сек = 2 мин 55 сек ? Как получить 2 и 55?
t = 175
m = t // 60 # 2
s = t % 60 # 55
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
10. Частное и остаток
Программирование (Python), 8 класс10
Частное и остаток
? Что получится?
n = 123
d = n // 10 # 12
k = n % 10 # 3
При делении на 10 нацело отбрасывается последняя
цифра числа.
Остаток от деления на 10 – это последняя цифра числа.
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
11. Сокращенная запись операций
Программирование (Python), 8 класс11
Сокращенная запись операций
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
К.Ю. Поляков, Е.А. Ерёмин, 2018
a += 1
увеличение на 1
http://kpolyakov.spb.ru
12. Форматный вывод
Программирование (Python), 8 класс12
Форматный вывод
a = 1; b = 2; c = 3
print( a, b, c )
1 2 3
форматная строка
123
print("{}{}{}".format(a,b,c))
тут нужно что-то
вывести
print("{}{:3}{:5}".format(a,b,c))
количество знаков
на вывод числа
? Сколько знаков для вывода a?
К.Ю. Поляков, Е.А. Ерёмин, 2018
1
2
3
3
5
http://kpolyakov.spb.ru
13. Форматный вывод
Программирование (Python), 8 класс13
Форматный вывод
a = 1; b = 2
print("{}+{}={}".format(a,b,c))
1+2=3
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
14. Форматный вывод
Программирование (Python), 8 класс14
Форматный вывод
x=12.345678
print("x={}".format(x))
всего на
число
x=12.345678
в дробной
части
print("x={:10.3f}".format(x))
12.346
3
10
print("x={:8.2f}".format(x))
12.34
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
15. Форматный вывод
Программирование (Python), 8 класс15
Форматный вывод
print("x={:2.2f}".format(x))
12.34
print("x={:.2f}".format(x))
12.34
минимально
возможное
print("x={:0.1f}".format(x))
12.3
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
16. Операции с вещественными числами
Программирование (Python), 8 класс16
Операции с вещественными числами
int – целая часть числа
x=1.6
print(int(x))
1
round – ближайшее целое число
x=-1.2
-1
print(round(x))
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
17. Математические функции
Программирование (Python), 8 класс17
Математические функции
загрузить
модуль math
= подключить математические
функции
import math
# квадратный корень
print( math.sqrt(25) )
r = 50 # радиус окружности
print( 2*math.pi*r )
Что считаем?
?
print( math.pi*r**2 )
число
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
18. Случайные и псевдослучайные числа
Программирование (Python), 8 класс18
Случайные и псевдослучайные числа
Случайные явления
• встретил слона – не встретил слона
• жеребьёвка на соревнованиях
• лотерея
• случайная скорость (направление выстрела ) в игре
• …
Случайные числа — это последовательность чисел, в
которой невозможно предсказать следующее число,
даже зная все предыдущие.
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
19. Генератор случайных чисел
Программирование (Python), 8 класс19
Генератор случайных чисел
import random
англ. random – случайный
Целые числа на отрезке [a,b]:
X = random.randint(1,6) # псевдосл. число
Y = random.randint(1,6) # уже другое!
Генератор на [0,1):
X = random.random()
Y = random.random()
# псевдослучайное число
# это уже другое число!
Генератор на [a, b] (вещественные числа):
X = random.uniform(1.2, 3.5)
Y = random.uniform(1.2, 3.5)
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
20. Датчик случайных чисел
Программирование (Python), 8 класс20
Датчик случайных чисел
Целые числа на отрезке:
подключить функцию randint
из модуля random
from random import randint
K = randint(1, 6) # отрезок [1,6]
L = randint(1, 6) # это уже другое число!
англ. integer – целый
random – случайный
! Не нужно имя модуля!
K = random.randint(1, 6)
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
21. Датчик случайных чисел
Программирование (Python), 8 класс21
Датчик случайных чисел
Вещественные числа:
from random import random, uniform
x = random()
# полуинтервал [0,1)
y = 7*random()
# полуинтервал [0,7)
z = 7*random()+5 # полуинтервал [5,12)
Вещественные числа на отрезке [a, b]:
from random import uniform
x = uniform(1.5, 2.8)
# [1,5; 2,8]
y = uniform(5.25, 12.75) # [5,25; 12,75]
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru
22. Генератор случайных чисел
Программирование (Python), 8 класс22
Генератор случайных чисел
from random import *
подключить все!
Целые числа на отрезке [a,b]:
X = randint(10,60) # псевдослучайное число
Y = randint(10,60) # это уже другое число!
Генератор на [0,1):
X = random(); # псевдослучайное число
Y = random() # это уже другое число!
Генератор на [a, b] (вещественные числа):
X = uniform(1.2, 3.5) # псевдосл. число
Y = uniform(1.2, 3.5) # уже другое число!
К.Ю. Поляков, Е.А. Ерёмин, 2018
http://kpolyakov.spb.ru