Форум программистов, компьютерный форум CyberForum.ru

Реализация линейного конгруэнтного датчика - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Замена символа на подстроку http://www.cyberforum.ru/cpp-beginners/thread686225.html
задача: Постройте по строке новую строку, которая получена из исходной заменой символа '1' на подстроку ”один”, символа ‘2’ на подстроку “два” и символа ‘3’ на подстроку “три”. решение: int insertin(char* rez, int k,const char* s) { for (int i = 0; s != 0; i++, k++) { rez = s;
C++ В чем ошибка помогите пожалуйста. В чем ошибка помогите пожалуйста. # include <iostream.h> # include <stdio.h> # include <math.h> void main() {int a; cout <<" Program 1. Kuhna http://www.cyberforum.ru/cpp-beginners/thread686223.html
C++ Периодические функции
Добрый день, помогите написать на с++ или даже на паскале можно,я вообще не понимаю алгоритма, как это написать:) заранее большущие спасибо Периодические функции. Утверждается, что функция у = f(x) периодическая с периодом Т. Проверить это численно, вычислив функцию с постоянным шагом на отрезке . Учесть погрешность вычислений и возможные точки разрыва функций. Проверить на примере функций:...
C++ Дано целое число k (1<=k<=365)
1) Дано целое число k (1<=k<=365). Определить, каким будет k-й день года: выходным или рабочим, если 1 января - понедельник. 2) Даны четыре вещественных числа. Определить сколько из них отрицательных. оператор цикла не использовать.
C++ лабораторная по информатике http://www.cyberforum.ru/cpp-beginners/thread686178.html
помогите с задачками, пожалуйста! 1. Поменять местами максимальный и последний отрицательный элементы массива А (40). 2. Сформировать новый массив из элементов заданного целочисленного массива М (50), кратных 7 или содержащих в записи числа цифру 7.
C++ Вычисление суммы бесконечного ряда помогите написать программу подробнее

Показать сообщение отдельно
MAnton
23 / 23 / 1
Регистрация: 21.04.2011
Сообщений: 139

Реализация линейного конгруэнтного датчика - C++

01.11.2012, 18:46. Просмотров 361. Ответов 2
Метки (Все метки)

Нужно сгенерировать случайные числа равномерно распределенные на промежутке [0,1]. Написал вот такую функцию с параметрами по умолчанию x0 = 9340718 M=1073741824 a=484331 c=453816693
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
double* Rand::rnd(long N,int x0, int M, int a, int c){
  size=N;
  int *x;
  x=new int [size];
 
  delete []masRand;
  masRand=new double[size];
 
  x[0]=(a*x0+c)%M;
  masRand[0]=fabs(x[0])*0.4656613e-09;
  for(long i=1;i<size;i++){
    x[i]=(a*(x[i-1])+c);
    x[i]=x[i]%M;
    masRand[i]=fabs(x[i])*0.4656613e-09;
   }
  return masRand;
}
проблема в том что числа генерируются не в промежутка [0,1] а в промежутке [0,0.5]. В чем здесь дело?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru