Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.94/32: Рейтинг темы: голосов - 32, средняя оценка - 4.94
2 / 1 / 0
Регистрация: 09.09.2011
Сообщений: 51
1

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

13.09.2011, 12:55. Показов 6310. Ответов 30
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Написать программу которая генерирует 2 целых числа от 0 до 9 и спрашивает произведение у пользователя, а потом сверяет его с верным.


среда программирования Visual Studio 2010
язык Си или Си++.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.09.2011, 12:55
Ответы с готовыми решениями:

Работа с генератором случайных чисел
Здравствуйте, уважаемые форумчане. Прошу помощи вот с такой задачей, не могу никак ничего...

Как работать с генератором случайных чисел
В интернете нашёл мешалку для vector'a #include <algorithm> #include <functional> #include...

Задать размерность вектору генератором случайных чисел
Привет) Ситуация следующая: Динамический вектор. Написать программу по формированию...

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

30
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
12831 / 7568 / 1764
Регистрация: 25.07.2009
Сообщений: 13,959
13.09.2011, 16:19 21
Author24 — интернет-сервис помощи студентам
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
в конечном итоге наши посты направлены на помощь а не на взаимные язвы, или я не прав?
За всех, конечно, не скажу, у меня язвить и в мыслях небыло. Мы тут вроде для того, чтоб чему-то научиться, а не позлорадствовать друг над дружкой. Просто на самом деле интересно, какой профит с такого замысловатого получения случайного числа? Повторюсь - в теории, особенно при небольшом RandMax функция rand() может бесконечно долго выдавать число больше. При этом конструкция
Код
rand() % RandMax
сразу вернёт число 0 <= x < RandMax... Ну а по поводу того, нужно угадать произведение, или посчитать и проверить результат - ТС молчит, как партизан, но думаю, всё-таки второй вариант...
0
Фрилансер
Эксперт С++
5845 / 1226 / 499
Регистрация: 23.11.2010
Сообщений: 3,375
Записей в блоге: 1
13.09.2011, 16:39 22
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include <cstdlib>
 
int main()
{
    srand(time(0));
    int a;
    std::cin>>a;
    std::cout<<(a == rand()%10*rand()%10?"ja":"nein")<<std::endl;
    system("pause");
    return 0;
}
Опоздал...
0
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 1
13.09.2011, 17:42 23
Цитата Сообщение от easybudda Посмотреть сообщение
Повторюсь - в теории, особенно при небольшом RandMax функция rand() может бесконечно долго выдавать число больше.
Попробовал генерировать либо 0 либо 1 (то есть при randMax = 2), в среднем от 10 до 13 секунд, количество опытов около 100.
0
Эксперт С++
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
13.09.2011, 17:44 24
fasked, похоже, что у тебя RAND_MAX равен 2^31-1
0
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 1
13.09.2011, 18:04 25
Цитата Сообщение от grizlik78 Посмотреть сообщение
похоже, что у тебя RAND_MAX равен 2^31-1
еще хуже, https://www.cyberforum.ru/cgi-bin/latex.cgi?2^{32-1}
0
Эксперт С++
2382 / 1666 / 279
Регистрация: 29.05.2011
Сообщений: 3,402
13.09.2011, 18:07 26
Ой, с таким я не сталкивался, хотя всё возможно
У меня 2 147 483 647
0
Эксперт С++
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
13.09.2011, 18:17 27
А если сначала сгенерировать число от 0 до RandMax-1, а потом в полученном числе случайно выбрать цифру, тоже вариант
0
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 1
13.09.2011, 18:27 28
Цитата Сообщение от Thinker Посмотреть сообщение
А если сначала сгенерировать число от 0 до RandMax-1, а потом в полученном числе случайно выбрать цифру, тоже вариант
Весело, но к чему такие сложности
0
Эксперт С++
4267 / 2241 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
13.09.2011, 18:29 29
Цитата Сообщение от fasked Посмотреть сообщение
Весело, но к чему такие сложности
А чтобы интересно было Тем более кто сказал, что если брать остатки от деления, то распределение более равномерно, чем такой способ.
0
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 1
13.09.2011, 18:34 30
Цитата Сообщение от grizlik78 Посмотреть сообщение
Ой, с таким я не сталкивался, хотя всё возможно
Ох, да что же это я Накосячил... у меня конечно же тоже 2147483647.

Добавлено через 3 минуты
Цитата Сообщение от Thinker Посмотреть сообщение
Тем более кто сказал, что если брать остатки от деления, то распределение более равномерно, чем такой способ.
Да никто этого не говорил. Вообще < я в манах по OpenOffice читал >, что у них (в OpenOffice) нормальное распределение получается по следующей формуле:
Код
RandNormal = sqr(-2 * log(1-rnd())) * cos(rnd() * 2 * PI)
ну это естесствено для дробных, если отбросить дробную часть, то пойдет
0
594 / 532 / 76
Регистрация: 22.03.2011
Сообщений: 1,585
13.09.2011, 18:35 31
у меня ваще RAND_MAX = 32к )
0
13.09.2011, 18:35
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.09.2011, 18:35
Помогаю со студенческими работами здесь

Массив: Получить массив, элементы которого задаются генератором случайных чисел в диапазоне от 1 до 40.
Нужен одномерный массив, который задается генератором рандомных чисел в диапазоне от 1 до 40, числа...

Отладка кода с генератором случайных функций
Есть код генератора рандома для вызова одной из функций #include &lt;iostream&gt; #include &lt;cstdlib&gt;...

Программа с генератором случайных чисел не всегда выдает корректный результат
Небольшой &quot;шедевр&quot;. Вроде бы синтаксис верный, а вот работает периодически с ошибками. Как вы...

Помогите с генератором случайных чисел
program new; var i,j,k,num:integer; begin for i:=1 to 500 do begin randomize;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
31
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru