В процессе обучения мы широко будем использовать генератор случайных чисел. Это будет полезно как в играх, например для случайной расстановки бомб, так и для обычных тренировочных задач. Чтобы получить случайное число, надо подключить модуль random и воспользоваться функцией randrange(), которая получает в качестве аргумента (см. справочник на то, что такое функция, что такое аргумент, результат) максимально возможное значение (почти). randrange(10) вернет случайное число в промежутке от 0 до 9, а print(a) позволит вывести это число на экран (в консоль). Запустите эту программу несколько раз:
import random a = random.randrange(10) print(a)
Нельзя сказать, что random.randrange слишком удобно печатать – уж слишком длинно. Мы можем упростить себе жизнь, если подключим только функцию randrange:
from random import randrange a = randrange(10) print(a)
Стало лучше, но можно еще короче!
from random import randrange as rnd a = rnd(10) print(a)
Теперь попробуем нарисовать квадрат случайного размера:
from turtle import *
from random import randrange as rnd
def sq(a):
color('red','yellow')
begin_fill()
pd()
fd(a)
rt(90)
fd(a)
rt(90)
fd(a)
rt(90)
fd(a)
pu()
end_fill()
a = rnd(10,100)
sq(a)
done()
На этот раз функция rnd (randrange) получает два аргумента: минимальное значение и максимальное значение. Не слишком-то интересно рисовать квадраты очень маленького размера, не так ли?
2. Нарисовать две окружности одинакового размера, выбранного случайным образом
Посмотрим, как переместить Черепашку в случайно выбранную точку:
x = rnd(-200,200) y = rnd(-200,200) setpos(x,y)
4. Нарисовать 10 окружностей в случайных местах, случайно выбранным размером
Изменим команду «Квадрат» таким образом, чтобы квадрат был нарисован под случайным углом:
from turtle import *
from random import randrange as rnd
speed(0)
def sq(a):
rt(rnd(360))
color('green','lightgreen')
begin_fill()
pd()
fd(a)
rt(90)
fd(a)
rt(90)
fd(a)
rt(90)
fd(a)
rt(90)
pu()
end_fill()
sq(90)
done()

4 thoughts on “3. Генератор случайных чисел”