Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Zoger
3 / 3 / 0
Регистрация: 10.10.2010
Сообщений: 68
1

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

12.05.2013, 12:29. Просмотров 952. Ответов 4
Метки нет (Все метки)

Всем привет, вот такая задачка. "Датчики случайных чисел можно привлекать при подборе проверочных исходных данных для программ.
а) 25 действительных чисел, лежащих в диапазоне от -50 до 50.
б) 30 целых чисел, лежащих в диапазоне от -20 до 20.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
#include <stdlib.h>
#include <time.h>
 
using namespace std;
 
int main()
{
   int n;
   double m;
   srand(time(NULL));
 
   cout << "a) \n";
   for(int i = 0; i < 25; i++)
   {
   m = 0.49 * (rand() % 101);
   cout << m << endl;
   }
 
   cout << "b) \n";
   for(int i = 0; i < 30; i++)
   {
      n = -20 + rand() % 41;
      cout << n << endl;
   }
   system ("PAUSE");
   return 0;
}
пункт "б" получился, но вот в пункте "а" никак не получается реализовать диапазон от -50 до 50. Смог получит что-то вроде от 0 до 50 но вот с минусом никак. ):
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.05.2013, 12:29
Ответы с готовыми решениями:

Генератор случайных чисел
Реализовать генератор случайных числе в диапазоне от нуля до единицы. После генерации случайного...

Генератор случайных чисел
Добрый вечер! Собственно-то тако задание: необходимо правильно задать параметры для ЛКГ и написать...

Генератор случайных чисел
Здорова господа! Нужно написать свой собственный генератор случайных чисел, такой же примерно...

Генератор случайных чисел
Здраствуййте :( int a=rand()%10000; std::cout &lt;&lt; a; getchar(); return 0; int...

генератор случайных чисел
Всем доброго времени суток, вот решил написать генератор чисел длины 768 бит, все отлично вроде и...

4
Precise
26 / 26 / 8
Регистрация: 20.05.2012
Сообщений: 43
12.05.2013, 12:38 2
У вас оба пункта не правильны! Ниже представлена правильная запись.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
#include <stdlib.h>
#include <time.h>
 
using namespace std;
 
int main()
{
   int n;
   double m;
   srand(time(NULL));
 
   cout << "a) \n";
   for(int i = 0; i < 25; i++)
   {
   m = 0.49 * (rand() % 50 - 50);
   cout << m << endl;
   }
 
   cout << "b) \n";
   for(int i = 0; i < 30; i++)
   {
      n = rand() % 20 - 20;
      cout << n << endl;
   }
   system ("PAUSE");
   return 0;
}
1
Zoger
3 / 3 / 0
Регистрация: 10.10.2010
Сообщений: 68
12.05.2013, 12:42  [ТС] 3
Цитата Сообщение от Precise Посмотреть сообщение
У вас оба пункта не правильны!
большое спасибо!
Но мой вариант пункта "б" тоже вроде правильный. по крайней мере компилятор правильно выбирает числа в указанном диапазоне.
0
Precise
26 / 26 / 8
Регистрация: 20.05.2012
Сообщений: 43
12.05.2013, 12:52 4
Если хотите использовать свою реализацию, тогда сделайте так!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
#include <stdlib.h>
#include <time.h>
 
using namespace std;
 
int main()
{
   int n;
   double m;
   srand(time(NULL));
 
   cout << "a) \n";
   for(int i = 0; i < 25; i++)
   {
   m = -50 + 0.49 * (rand() % 101);
   cout << m << endl;
   }
 
   cout << "b) \n";
   for(int i = 0; i < 30; i++)
   {
      n =-20 + rand() % 41;
      cout << n << endl;
   }
   system ("PAUSE");
   return 0;
}
0
Zoger
3 / 3 / 0
Регистрация: 10.10.2010
Сообщений: 68
12.05.2013, 13:01  [ТС] 5
Цитата Сообщение от Precise Посмотреть сообщение
m = -50 + 0.49 * (rand() % 101);
Цитата Сообщение от Precise Посмотреть сообщение
m = 0.49 * (rand() % 50 - 50);
но эти оба варианта берут только -50 до 0
0
12.05.2013, 13:01
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.05.2013, 13:01

Генератор случайных чисел
Помогите написать программу, которая генерировала бы случайные числа мультипликативным конгруэнтным...

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

Генератор случайных чисел
Как написать генератор случайных (пусть и псевдо) чисел, выдающий на выходе целые случайные числа...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru