

Random
Presentation
•
Computers
•
KG
•
Practice Problem
•
Easy
Иван Клопов
Used 3+ times
FREE Resource
11 Slides • 13 Questions
1
2
Случайные числа
Случайные числа – последовательность чисел, в которой невозможно предсказать следующее число, зная все предыдущие.
Случайные числа широко используются в различных задачах программирования:
в играх (имитация подбрасывания игрального кубика и другие подобные ситуации);
в программах имитационного моделирования;
в статистических программах, случайным образом отбирающих данные для анализа;
в компьютерной безопасности для шифрования уязвимых данных.
Для создания истинно случайных чисел можно бросать монету, игральные кости, или измерять какой-нибудь шумовой сигнал.
3
Псевдослучайные числа
Ставить сложные электронные приборы на каждый компьютер для генерации истинно случайных чисел дорого, поэтому математики и программисты создали алгоритмы получения псевдослучайных чисел, работающий по принципу вихря Мерсенна
4
Псевдослучайные числа
Вихрь Мерсенна (англ. Mersenne twister, MT) — генератор псевдослучайных чисел, разработанный в 1997 году японскими учёными Макото Мацумото и Такудзи Нисимура.
Принцип работы: алгоритм использует большое число (обычно 32-битное или 64-битное) в качестве состояния генератора, который затем преобразуется с помощью сложных операций, чтобы получить следующее псевдослучайное число.
Основные характеристики Вихря Мерсенна:
Длинный период. Алгоритм может генерировать огромное количество уникальных псевдослучайных чисел перед тем, как начнёт повторяться последовательность.
Хорошее качество случайности. Сгенерированные числа должны соответствовать статистическим свойствам случайных чисел.
Производительность. Вихрь Мерсенна имеет хорошую производительность, что делает его привлекательным выбором для многих задач.
Однако этот генератор не является криптостойким, что ограничивает его использование в криптографии.
5
Модуль random
Модуль random предоставляет функции для генерации псевдослучайных чисел, букв и случайного выбора элементов последовательности (списка, строки и т.д.). Для использования этих функций в начале программы необходимо подключить модуль, что делается командой import: import random После подключения модуля мы можем использовать его функции.
6
Основные функции:
Функция randint()
Функция randrange()
Функция random()
Функция uniform()
Функция seed()
7
Функция randint()
Функция randint(min, max) возвращает случайное целое число в промежутке между двумя значениями min и max.
import random
number = random.randint(20, 35) # значение от 20 до 35
print(number)
8
Функция randrange()
Функция randrange() возвращает случайное целое число из определенного набора чисел. Она имеет три формы:
randrange(stop): в качестве набора чисел, из которых происходит извлечение случайного значения, будет использоваться диапазон от 0 до числа stop
randrange(start, stop): набор чисел представляет диапазон от числа start до числа stop
randrange(start, stop, step): набор чисел представляет диапазон от числа start до числа stop, при этом каждое число в диапазоне отличается от предыдущего на шаг step
import random
number = random.randrange(10) # значение от 0 до 10 не включая
print(number)
number = random.randrange(2, 10) # значение в диапазоне 2, 3, 4, 5, 6, 7, 8, 9
print(number)
number = random.randrange(2, 10, 2) # значение в диапазоне 2, 4, 6, 8
print(number)
9
Функция random()
Функция random() возвращает случайное число с плавающей точкой в промежутке от 0.0 до 1.0. Если же нам необходимо число из большего диапазона, скажем от 0 до 100, то мы можем соответственно умножить результат функции random на 100.
import random
number = random.random() # значение от 0.0 до 1.0
print(number)
number = random.random() * 100 # значение от 0.0 до 100.0
print(number)
10
Функция uniform()
uniform() . Эта функция является частью модуля random в Python и возвращает случайное число с плавающей точкой в указанном диапазоне. В этом коде random. uniform(0, 1) генерирует случайное число с плавающей точкой в диапазоне от 0 до 1.
11
Функция seed()
Функция seed() в Python устанавливает целое начальное значение, используемое при генерации случайных чисел. Вызвать эту функцию нужно перед вызовом любой другой случайной функции модуля. Синтаксис: seed(x). Параметр x — это начальное число для следующего случайного числа. По умолчанию берется системное время.
12
Multiple Choice
Как называется алгоритм, лежащий в основе генерации псевдослучайных чисел в модуле random?
алгоритм Зиккурат
вихрь Мерсенна
конгруэнтный алгоритм
алгоритм Вичманна-Хилла
13
Multiple Choice
Какая функция возвращает случайное целое число внутри заданного диапазона значений?
randint()
random_integer()
uniform()
random()
14
Multiple Select
Какое число может быть в переменной num после выполнения следующего кода:
import random
num = random.randint(1, 118)
50
-1
1
119
15
Multiple Choice
акая функция возвращает случайное число с плавающей точкой в диапазоне [0.0;1.0)?
random()
randrange()
randint()
uniform()
random_integer()
16
Multiple Choice
Какая функция возвращает случайное число с плавающей точкой внутри заданного диапазона значений?
random()
uniform()
randrange()
random_integer()
17
Multiple Select
Какое число может быть в переменной num после выполнения следующего кода:
import random
num = random.randrange(115)
114
1
0
115
1120
18
Multiple Select
Какое число может быть в переменной num после выполнения следующего кода:
import random
num = random.randrange(9, 81)
52
9
1
81
0
19
Multiple Select
Какое число может быть в переменной num после выполнения следующего кода:
import random
num = random.randrange(15, 50, 5)
30
45
15
50
5
20
Multiple Choice
Функция seed() используется для инициализации начального значения генератора псевдослучайных чисел в модуле random. Верно ли, что по умолчанию, начальным значением генератора является системное время (текущая дата и время)?
да
нет
21
Open Ended
Напишите программу, которая с помощью модуля random моделирует броски монеты. Программа принимает на вход количество попыток и выводит результаты бросков: Орел или Решка (каждое на отдельной строке).
22
Open Ended
Напишите программу, которая с помощью модуля random моделирует броски игрального кубика c 6 гранями. Программа принимает на вход количество попыток и выводит результаты бросков — выпавшее число, которое написано на грани кубика (каждое на отдельной строке).
23
Open Ended
Лотерейный билет содержит 77 чисел из диапазона от 11 до 4949 (включительно).
Напишите программу, которая с помощью модуля random генерирует 77 различных случайных чисел для лотерейного билета. Программа должна вывести числа в порядке возрастания на одной строке через один символ пробела.
24
Open Ended
Мапксим загадал число от 1 до n (включительно), а Руслан собирается его отгадать. Каждый раз Руслан называет число Тимуру, а Тимур отвечает ему одним из способов: "больше", "меньше", "ты отгадал!". За какое наименьшее количество попыток Руслан может гарантированно угадать число Тимура? (напишите программу,)
Show answer
Auto Play
Slide 1 / 24
SLIDE
Similar Resources on Wayground
19 questions
1.5 Кибербуллинг и фишинг
Presentation
•
7th Grade
18 questions
Сортировка 9 класс
Presentation
•
9th Grade
19 questions
Conjugating AR Ending Verbs Lesson
Presentation
•
9th - 12th Grade
18 questions
Population and Sample, Bias, Measure of Central Tendency and
Presentation
•
6th - 7th Grade
21 questions
Программирование на Python
Presentation
•
10th Grade
21 questions
Итоговое задание по Информатике 5 класс
Presentation
•
5th Grade
16 questions
Computing Systems
Presentation
•
5th - 10th Grade
16 questions
Unit 3 Vocabulary, BusCompSci
Presentation
•
6th Grade
Popular Resources on Wayground
15 questions
Grade 3 Simulation Assessment 1
Quiz
•
3rd Grade
22 questions
HCS Grade 4 Simulation Assessment_1 2526sy
Quiz
•
4th Grade
16 questions
Grade 3 Simulation Assessment 2
Quiz
•
3rd Grade
19 questions
HCS Grade 5 Simulation Assessment_1 2526sy
Quiz
•
5th Grade
17 questions
HCS Grade 4 Simulation Assessment_2 2526sy
Quiz
•
4th Grade
20 questions
Equivalent Fractions
Quiz
•
3rd Grade
24 questions
HCS Grade 5 Simulation Assessment_2 2526sy
Quiz
•
5th Grade
20 questions
Math Review
Quiz
•
3rd Grade
Discover more resources for Computers
19 questions
Fire Safety
Quiz
•
KG - 2nd Grade
36 questions
8th Grade US History STAAR Review
Quiz
•
KG - University
20 questions
Capitalization in sentences
Quiz
•
KG - 4th Grade
19 questions
Disney Movies
Quiz
•
KG - 8th Grade
25 questions
Hidden Figures
Quiz
•
KG - 12th Grade
10 questions
Counting Nickels and Pennies
Quiz
•
KG - 2nd Grade
13 questions
Time
Quiz
•
KG - 2nd Grade
20 questions
Place Value
Quiz
•
KG - 3rd Grade