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

Альтернатива RandSeed - C++

Восстановить пароль Регистрация
 
GSUR
 Аватар для GSUR
3 / 3 / 2
Регистрация: 27.05.2010
Сообщений: 60
09.02.2012, 17:48     Альтернатива RandSeed #1
Здравствуйте, скажите какая альтернатива RandSeed из Borland в Dev-C++? Уж и не знаю как в поиске извратиться...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.02.2012, 17:48     Альтернатива RandSeed
Посмотрите здесь:

C++ альтернатива case из паскаля
C++ Альтернатива %USERPROFILE%
C++ Альтернатива функции strspn
C++ Альтернатива функции IntToHex
Альтернатива goto в С++ C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
rangerx
1908 / 1517 / 139
Регистрация: 31.05.2009
Сообщений: 2,876
09.02.2012, 17:52     Альтернатива RandSeed #2
www.cplusplus.com/reference/clibrary/cstdlib/srand/
GSUR
 Аватар для GSUR
3 / 3 / 2
Регистрация: 27.05.2010
Сообщений: 60
10.02.2012, 11:43  [ТС]     Альтернатива RandSeed #3
Был на этой страничке, может в С++ есть переменная seed, но в Dev-C++ компилятор на нее ругается.

Добавлено через 2 минуты
C++
1
2
3
srand(time(NULL));
int a[30];
a[0] = seed; //ругается
CheshireCat
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,307
10.02.2012, 11:43     Альтернатива RandSeed #4
Приведи код. И как именно компилятор ругается? Телепаты все в отпуске.
GSUR
 Аватар для GSUR
3 / 3 / 2
Регистрация: 27.05.2010
Сообщений: 60
10.02.2012, 11:46  [ТС]     Альтернатива RandSeed #5
Dev-C++ v4.9.9.2
//err
undeclared
CheshireCat
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,307
10.02.2012, 11:49     Альтернатива RandSeed #6
Код где???
GSUR
 Аватар для GSUR
3 / 3 / 2
Регистрация: 27.05.2010
Сообщений: 60
10.02.2012, 11:51  [ТС]     Альтернатива RandSeed #7
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <cstdlib>
#include <iostream>
#include <ctime>
 
using namespace std;
 
int main(int argc, char *argv[])
{
    srand(time(NULL));
    const int m = 2147483647;
    const int j = 630360016;
    const int n = 3000;
    long a[n], b[n];
    a[0] = seed;
    
    system("PAUSE");
    return EXIT_SUCCESS;
}
выше тоже самое и без лишних строк, что вам не нравится?)

Альтернатива RandSeed
CheshireCat
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,307
10.02.2012, 11:59     Альтернатива RandSeed #8
Ну так компилятор правильно ругается. У тебя же нет переменной seed, не так ли? :-)
Что ты вообще хочешь сделать-то?
GSUR
 Аватар для GSUR
3 / 3 / 2
Регистрация: 27.05.2010
Сообщений: 60
10.02.2012, 12:09  [ТС]     Альтернатива RandSeed #9
Я хочу написать генератор случайных чисел, написал на дельфе:
Delphi
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
program Project1;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
 
const
    n=10000;
 
var
    a:array [0..10000] of int64;
    b:array [0..10000] of real;
    i, m, j:longint;
    c, d, e, x1, x2, sig:Double;
 
begin
  { TODO -oUser -cConsole Main : Insert code here }
 
Randomize;
m:=2147483647;
j:=630360016;
c:=0;
d:=0;
a[0]:=RandSeed;
 
a[0]:=abs(a[0]);
 
for i := 1 to (n-1) do
    a[i]:=a[i-1]*j mod m;
 
for i := 0 to n-1 do
  begin
    b[i]:=a[i]/m;
    c:=c+b[i];
    d:=d+b[i]*b[i];
  end;
 
c:=c/n;
writeln('MO: ', c:4:5);
d:=(d-n*c*c)/(n-1);
writeln('D: ', d:4:5);
e:=sqrt(d);
writeln('SKO: ', e:4:5);
 
sig:=1.96*e/sqrt(n);
x1:=c-sig;
x2:=c+sig;
writeln('x1: ', x1:4:3, ' x2: ', x2:4:3);
 
readln;
end.
Хочу переписать на сишку, но в Dev не могу найти такой же глобальной переменной для рандома, как RandSeed в дельфе...
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
10.02.2012, 12:23     Альтернатива RandSeed #10
http://en.cppreference.com/w/cpp/numeric/random/rand
CheshireCat
Эксперт С++
2907 / 1235 / 78
Регистрация: 27.05.2008
Сообщений: 3,307
10.02.2012, 12:25     Альтернатива RandSeed #11
AFAIK, в библиотеке Си опорное число встроенного генератора случайных чисел недоступно - это отличие от Дельфи. Ты можешь только установить новое значение этого числа, используя функцию srand().
GSUR
 Аватар для GSUR
3 / 3 / 2
Регистрация: 27.05.2010
Сообщений: 60
10.02.2012, 12:31  [ТС]     Альтернатива RandSeed #12
Для тех ко найдет эту тему и не особо дружит с английским, глобальной переменной для srand() является rand(), если я все правильно понял
По идее все работает начальное случайное число дает, но при многократный запусках выводит числа в порядке возрастания.
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
10.02.2012, 12:32     Альтернатива RandSeed #13
Цитата Сообщение от GSUR Посмотреть сообщение
глобальной переменной для srand() является rand()
Это функции.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.02.2012, 12:34     Альтернатива RandSeed
Еще ссылки по теме:

C++ Альтернатива if (.) {.} (тернарный оператор)
Альтернатива функции rand()? C++
C++ Альтернатива make

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

Или воспользуйтесь поиском по форуму:
GSUR
 Аватар для GSUR
3 / 3 / 2
Регистрация: 27.05.2010
Сообщений: 60
10.02.2012, 12:34  [ТС]     Альтернатива RandSeed #14
CheshireCat, твой ответ не увидел свой написал, то есть к подобной переменной не подобраться?
Yandex
Объявления
10.02.2012, 12:34     Альтернатива RandSeed
Ответ Создать тему
Опции темы

Текущее время: 13:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru