Генератор случайных чисел онлайн | Рандом чисел

Генератор чисел онлайн — это удобный инструмент, позволяющий получить необходимое количество чисел заданной разрядности и широчайшего диапазона. Нашему генератору случайных чисел можно найти множество применений! Например, можно провести конкурс в ВКонтакте и разыграть там плюшевого медведя в группе байкеров за рипост:)) Также мы будем весьма польщены, если с помощью него Вы решите определить выигрышный номер в какой-либо лотерее или же решите, на какое число ставить в казино. Очень надеемся, что кто-нибудь найдет свое счастливое число онлайн именно у нас!

Настройки:

Диапазон:

От min=»-999999999″, max=»999999999″

До min=»-999999999″, max=»999999999″

Параметры:

Количество min=»1″, max=»999″

Исключить повторения:

Нет

Да

Результат:

84.27%

7 872 1 388

Случайное | рандомное число онлайн в 1 клик

Числа окружают нас с самого рождения и играют важную роль в жизни. У многих людей сама работа связана с числами, кто-то полагается на удачу, заполняя числами лотерейные билеты, а кто-то придает им и вовсе мистическое значение. Так или иначе, иногда нам не обойтись без того, чтобы воспользоваться такой программой, как генератор рандомных чисел.

К примеру, вам необходимо организовать розыгрыш призов среди подписчиков вашей группы. Быстро и честно выбрать призеров и поможет наш генератор случайных чисел онлайн. Вам просто нужно, например, задать нужное количество рандомных чисел (по числу призеров) и максимальный диапазон (по числу участников, если им присвоены номера). Подтасовка в таком случае полностью исключается.

Эта программа может также послужить как генератор случайных чисел для лото. К примеру, вы купили билет и хотите полностью полагаться на случайность и удачу в выборе чисел. Тогда наш рандомайзер чисел поможет заполнить ваш лотерейный билет.

Как сгенерировать случайное число: инструкция

Программа случайных чисел работает очень просто.

Вам даже не нужно загружать ее на компьютер – все делается в окне браузера, где открыта эта страница. Генерация случайных чисел происходит в соответствии с заданным количеством чисел и их диапазоном – от 0 до 999999999.

Чтобы сгенерировать число онлайн, необходимо:

  1. Выбрать диапазон, в котором вы хотите получить результат. Возможно, вы хотите отсечь числа до 10 или, скажем, 10000;
  2. Исключить повторения – выбрав этот пункт, вы заставите рандомизатор чисел предлагать вам только уникальные комбинации в рамках определенного диапазона;
  3. Выбрать количество чисел – от 1 до 999;
  4. Нажать кнопку «Генерировать результат».

Сколько бы вы чисел не хотели получить в результате, генератор простых чисел выдаст весь результат сразу и вы сможете увидеть его на этой странице, листая поле с числами при помощи мышки или тачпада.

Теперь вы можете воспользоваться готовыми числами так, как вам это необходимо. Из поля с числами вы можете скопировать результат для публикации в группе или отправке по почте. А чтобы результат не вызывал ни у кого сомнений, сделайте скриншот этой страницы, на которой будут хорошо видны параметры рандомизатора чисел и результаты работы программы. Изменить числа в поле невозможно, поэтому возможность подтасовки исключается. Надеемся, вам помог наш сайт и генератор случайных чисел.

python — Как вывести случайное пятизначное число случайное трехзначное число раз?

Как вывести случайное пятизначное число, где сумма всех цифр четна и первая и последняя цифры равны, случайное трехзначное число раз?

  • python

10

Можно сгенерировать все допустимые 5-значные числа и выбрать одно случайно:

import random
def valid(n):
    digits = list(map(int, str(n)))
    return digits[0] == digits[-1] and sum(digits) % 2 == 0
ndigits = 5
valid_numbers = list(filter(valid, range(10**(ndigits - 1), 10**ndigits)))
n = random.choice(valid_numbers)

Затем вывести его случайное трехзначное число раз:

for _ in range(random. randrange(100, 1000)):
    print(n)

Входной диапазон чисел маленький, поэтому какие-либо оптимизации здесь излишни.

1

  1. Сгенерировать первую и последнюю цифру digit
  2. Сгенерировать середину числа mid
  3. Если у середины нечётная сумма цифр, уменьшить её на 1
    (первая и последняя цифры одинаковы, поэтому на чётность суммы не влияют)
  4. Собрать всё в единое число

https://ideone.com/hvvZWg

import random
def sum_digits(x):
  res = 0
  while x:
    res += x % 10
    x //= 10
  return res
def gen_smth(N):
  digit = random.randint(1, 9)
  mid = random.randint(0, 10**N - 1)
  if sum_digits(mid) % 2: mid -= 1
  return (digit * 10**N + mid) * 10 + digit
for _ in range(100):
  print(gen_smth(3))

2

медленный, но более понятный способ

import random
res = []
rnd = lambda d=5: random. randint(10**(d-1), 10**d-1)  # случайное пятизначное число
max_l = random.randint(100, 999)  # случайное трехзначное число раз
while len(res) < max_l:
    r5 = rnd(5)
    str_r = tuple(map(int, str(r5)))
    if (not sum(str_r) % 2) and (str_r[0] == str_r[-1]):  # где сумма всех чисел четна и первая и последняя цифры равны
        res.append(r5)
print(len(res), res[0])  # 859 58955

Надо сгенерировать случайное число из диапазона 10000-99999. Потом сгенерировать другое число из диапазона 100-999 и задать цикл.

0

Зарегистрируйтесь или войдите

Регистрация через Google

Регистрация через Facebook

Регистрация через почту

Отправить без регистрации

Почта

Необходима, но никому не показывается

Отправить без регистрации

Почта

Необходима, но никому не показывается

Нажимая на кнопку «Отправить ответ», вы соглашаетесь с нашими пользовательским соглашением, политикой конфиденциальности и политикой о куки

Как сгенерировать случайное 10-значное число в ruby?

спросил

Изменено 1 год, 11 месяцев назад

Просмотрено 64к раз

Кроме того, как я могу отформатировать его как строку, дополненную нулями?

  • рубин
  • случайный

Для генерации номера вызовите rand с результатом выражения «10 в степени 10»

 rand(10 ** 10)
 

Чтобы дополнить число нулями, вы можете использовать оператор формата строки

 '%010d' % rand(10 ** 10)
 

или метод rjust строки

 rand(10 ** 10). to_s.rjust(10,'0')
 

2

Я хотел бы предложить самое простое известное мне решение, которое является довольно хорошим трюком.

 ранд.к_с[2..11]
 => "5950281724"
 

3

Это быстрый способ создать строку из 10 цифр:

 10.times.map{rand(10)}.join # => "3401487670"
 

4

Наиболее простым ответом, вероятно, будет

rand(1e9...1e10).to_i

Часть to_i необходима, потому что 1e9 и 1e10 на самом деле являются числами с плавающей запятой:

 irb(main)> 1e9.class
=> Плавающий
 

5

НЕ ИСПОЛЬЗОВАТЬ

rand.to_s[2..11].to_i

Почему? Потому что вот что вы можете получить:

 rand. to_s[2..9] #=> "04890612"
 

и затем:

 "04890612".to_i #=> 4890612
 

Обратите внимание, что:

 4890612.to_s.length #=> 7
 

Это не то, что вы ожидали!

Чтобы проверить эту ошибку в собственном коде, вместо .to_i вы можете обернуть его следующим образом:

 Integer(rand.to_s[2..9])
 

и очень скоро выяснится, что:

 ArgumentError: неверное значение для Integer(): "02939053"
 

Так что всегда лучше придерживаться .center , но имейте в виду, что:

 рэнд(9)
 

иногда может дать вам 0 .

Во избежание этого:

 рандов(1..9)
 

, который всегда будет возвращать что-то в пределах 1..9 диапазон.

Я рад, что у меня были хорошие тесты, и я надеюсь, что вы не сломаете свою систему.

Генерация случайных чисел

Использовать метод ядра#rand:

 rand(1_000_000_000..9_999_999_999) # => случайное 10-значное число
 

Генерация случайной строки

Использовать раз + map + join комбинация:

 10. times.map { rand(0..9) }.join # => случайная 10-значная строка (может начинаться с 0!)
 

Преобразование числа в строку с заполнением

Использовать метод String#%:

 "%010d" % 123348 # => "0000123348"
 

Генерация паролей

Используйте библиотеку генератора паролей KeePass, она поддерживает различные шаблоны для генерации случайных паролей:

 KeePass::Password.generate("d{10}") # => случайная строка из 10 цифр (может начинаться с 0 !)
 

Документацию по шаблонам KeePass можно найти здесь.

Просто потому, что это не было упомянуто, 9Метод 0027 Kernel#sprintf (или его псевдоним Kernel#format в библиотеке Powerpack) обычно предпочтительнее метода String#% , как указано в Ruby Community Style Guide.

Конечно, это очень спорно, но для понимания:

Синтаксис ответа @quackingduck будет

 # считается плохим
'%010d' % рандом(10**10)
# считается хорошим
спринтф('%010d', ранд(10**10))
 

Природа этого предпочтения в первую очередь связана с загадочной природой % . Сам по себе он не очень семантичен, и без дополнительного контекста его можно спутать с оператором по модулю % .

Примеры из Руководства по стилю:

 # плохо
'%d %d' % [20, 10]
# => '20 10'
# хороший
sprintf('%d %d', 20, 10)
# => '20 10'
# хороший
sprintf('%{первый} %{секундный}', первый: 20, второй: 10)
# => '20 10'
формат('%d %d', 20, 10)
# => '20 10'
# хороший
формат('%{первый} %{секундный}', первый: 20, второй: 10)
# => '20 10'
 

Вернуть правосудие на 9.

Это просто иллюстрирует тенденцию в сообществе, что «лучше» зависит от вас.

Больше информации в этом блоге. В итоге я использовал ядро ​​Ruby

 '%011d' % ранд(1e10)
 

Одно предостережение: 1e10 — это Float , а Kernel#rand приводит к вызову to_i , поэтому для некоторых более высоких значений у вас могут быть некоторые несоответствия. Чтобы быть более точным с литералом, вы также можете сделать:

 '%011d' % rand(10_000_000_000) # Обратите внимание, что в целочисленных литералах символы подчеркивания игнорируются. 
 

('%010d' % rand(0..9999999999)).to_s

или

"#{'%010d' % rand(0..9)999999999)}"

1

Я просто хочу изменить первый ответ. rand (10**10) может генерировать 9-значное случайное число, если 0 стоит на первом месте. Для обеспечения точной цифры 10 просто измените код

 = rand (10 ** 10)
в то время как code.to_s.length != 10
код = ранд (11 ** 11)
 

end

Попробуйте использовать библиотеку ruby ​​SecureRandom.

Генерирует случайные числа, но длина не определена.

Перейдите по этой ссылке для получения дополнительной информации: http://ruby-doc.org/stdlib-2.1.2/libdoc/securerandom/rdoc/SecureRandom.html

2

Простейший способ генерации n-значного случайного числа —

 Random.new.rand((10**(n - 1))..(10**n))
 

генерировать 10-значный номер числа —

 Random. new.rand((10**(10 - 1))..(10**10))
 

1

Этот метод работает для любого «алфавита»

 (1..10).map{"0123456789".chars.to_a.sample}.join
=> "6383411680"
 

Просто используйте прямое указание ниже.

 рандов(10 ** 9...10 ** 10)
 

Просто протестируйте его на IRB с помощью ниже.

 (1..1000).каждый { ставит ранд(10 ** 9...10 ** 10) }
 

1

Для генерации случайной строки из 10 цифр:

 # Создается строка из 10 цифр, где
# минимально возможное значение "0000000000", а
# максимально возможное значение "9999999999"
SecureRandom.random_number(10**10).to_s.rjust(10, '0')
 

Вот более подробная информация о том, что происходит, показано путем разбиения одной строки на несколько строк с поясняющими переменными:

 # Вычислить верхнюю границу для генератора случайных чисел
  # upper_bound = 10 000 000 000
  верхняя граница = 10 ** 10
  # n будет целым числом с минимально возможным значением 0,
  # и максимально возможное значение 9 999 999 999
  n = SecureRandom. random_number (верхняя граница)
  # Преобразование целого числа n в строку
  # unpadded_str будет "0", если n == 0
  # unpadded_str будет "9999999999", если n == 9_999_999_999
  unpadded_str = n.to_s
  # Дополнить строку ведущими нулями, если она меньше
  # 10 цифр.
  # "0" будет дополнено "0000000000"
  # "123" будет дополнено "0000000123"
  # "9999999999" не будет дополнено и останется без изменений как "9999999999"
  padded_str = unpadded_str.rjust(10, '0')
 
 рандов(9999999999).to_s.center(10, рандов(9).to_s).to_i
 

быстрее, чем

 rand.to_s[2..11].to_i
 

Вы можете использовать:

 puts Benchmark.measure{(1..1000000).map{rand(9999999999).to_s.center(10, rand(9).to_s).to_i}}
 

и

 помещает Benchmark.measure{(1..1000000).map{rand.to_s[2..11].to_i}}
 

в консоли Rails, чтобы подтвердить это.

Альтернативный ответ с использованием regexp-examples ruby ​​gem:

 требуют 'regexp-examples'
/\d{10}/. random_example # => "0826423747"
 

При таком подходе нет необходимости «заполнять нулями», так как вы сразу создаете String .

Это будет работать даже на ruby ​​1.8.7:

ранда(9999999999).to_s.center(10, рандов(9).to_s).to_i

Лучше использовать Array.new() вместо .times.map . Рубокоп рекомендует.

Пример:

 string_size = 9
Array.new(string_size) сделать
   ранд(10).to_s
конец
 

Rubucop, TimesMap:

https://www.rubydoc.info/gems/rubocop/RuboCop/Cop/Performance/TimesMap

1

В моем случае номер должен быть уникальным в моих моделях, поэтому я добавил блок проверки.

 модуль StringUtil
    уточнить String.singleton_class сделать
      def generate_random_digits (размер:)
        proc = lambda{ rand.to_s[2...(2 + размер)] }
        если block_given?
          петля сделать
            сгенерировано = proc. call
            break сгенерирован, если yield(generated) # проверка сгенерированного числа соответствует условию
          конец
        еще
          proc.call
        конец
      конец
    конец
  конец
  используя StringUtil
  String.generate_random_digits(3) => "763"
  String.generate_random_digits(3) сделать |число|
    User.find_by(code: num).nil?
  конец => "689"(Это уникально в коде пользователя)
 

Я сделал примерно так

 x = 10 #Число цифр
(ранд(10 ** x) + 10**x).to_s[0..x-1]
 

10 случайных чисел:

 требуется 'string_pattern'
ставит "10:N".gen
 

Зарегистрируйтесь или войдите в систему

Зарегистрируйтесь с помощью Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя адрес электронной почты и пароль

Опубликовать как гость

Электронная почта

Обязательно, но не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Генератор случайных чисел

Базовый калькулятор

Генератор случайных чисел

Диапазон
Сколько

Генерировать

номеров

Разрешить повторы:

ДаНет

Сортировать:

От низшего к высокому От старшего к низшему Не сортировать

Ответ:

7 4 6 10 8


Поделитесь этой ссылкой для ответа: help
Вставьте эту ссылку в электронное письмо, текст или социальные сети.


Получить виджет для этого калькулятора

© Calculator Soup

Поделитесь этим калькулятором и страницей

Калькулятор Используйте

Генерация одного или нескольких случайных чисел в выбранном вами диапазоне от 0 до 10 000. Генерируйте положительные или отрицательные случайные числа с повторами или без повторов.

О генераторах случайных чисел

Существует два основных типа генераторов случайных чисел: псевдослучайные и истинно случайные.

Генератор псевдослучайных чисел (PRNG) обычно программируется с использованием рандомизирующей математической функции для выбора «случайного» числа в заданном диапазоне. Эти генераторы случайных чисел являются псевдослучайными, поскольку компьютерная программа или алгоритм могут иметь непреднамеренное смещение выбора. Другими словами, случайность от компьютерной программы не обязательно является органическим, действительно случайным событием.

Настоящий генератор случайных чисел (TRNG) полагается на случайность физического события, которое является внешним по отношению к компьютеру и его операционной системе. Примерами таких событий являются всплески атмосферного шума или точки распада радиоактивного материала. Генератор истинных случайных чисел получает информацию об этих типах непредсказуемых событий для создания действительно случайного числа.

Этот калькулятор использует рандомизирующую компьютерную программу для получения случайных чисел, поэтому он является генератором псевдослучайных чисел.

Как генерировать случайные числа

  1. Каков ваш диапазон? Установите минимальное количество и максимальное количество. Сгенерированные случайные числа выбираются из вашего диапазона чисел, включая минимальное и максимальное числа.
  2. Сколько номеров? Укажите, сколько случайных чисел генерировать.
  3. Разрешить повторы? Если вы выберете No Ваши случайные числа будут уникальными, и у вас не будет шанса получить дубликат номера. Если вы выберете Да , генератор случайных чисел может создать повторяющееся число в вашем наборе чисел.
  4. Сортировать числа? Вы можете решить не сортировать ваши случайные числа. Вы также можете упорядочить свои случайные числа по возрастанию, от меньшего к большему или по убыванию, от большего к меньшему.

Вам нужно включить случайные числа и буквы в случайный набор символов? См. КалькуляторСуп ® Генератор наборов случайных чисел и букв.

Пример: создание случайного числа для использования в качестве PIN-кода

.

Для создания 6-значного PIN-кода с повторяющимися цифрами или без них выберите следующие настройки:

  • Мин. = 0
  • Макс. = 9
  • Сгенерировать 6 чисел
  • Разрешить повторы = да или нет
  • Номера сортировки = Не сортировать

Сделайте это: Сгенерируйте 6-значный PIN-код без дубликатов

Пример.

Случайный выбор набора чисел

Допустим, у вас есть группа из 10 человек, представленных числами от 1 до 10. Вы хотите перетасовать их в случайном порядке выбора для события.

Выберите следующие настройки для рандомизации порядка выбора:

  • Мин. = 1
  • Макс. = 10
  • Сгенерировать 10 номеров
  • Разрешить повторы = нет
  • Номера сортировки = Не сортировать

Сделайте это: Случайный порядок набора чисел, от 1 до 10

Пример: случайный выбор одного числа из диапазона чисел

Допустим, вы хотите случайным образом выбрать одно число от 1 до 10, например, вытащить число из шляпы.

Выберите следующие настройки:

  • Мин. = 1
  • Макс. = 10
  • Создать 1 номер
  • Разрешить повторы = нет
  • Номера сортировки = Не сортировать

Сделайте это: Генератор случайных чисел от 1 до 10

Также попробуйте: Генератор случайных чисел от 1 до 100

Пример: Генератор лотерейных номеров

Вы хотите генерировать номера для лотерейных билетов.