-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: "Sarr." <s...@g...pl>
Newsgroups: pl.comp.programming
Subject: Re: random delphi w c/c++
Date: Fri, 15 May 2009 17:23:23 +0200
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 68
Message-ID: <guk1dg$eu0$2@inews.gazeta.pl>
References: <gujmor$f0$1@inews.gazeta.pl> <gujqoh$8eq$1@news.onet.pl>
<guju7d$2ev$1@inews.gazeta.pl>
NNTP-Posting-Host: mail.vstep.nl
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: inews.gazeta.pl 1242401008 15296 80.95.164.246 (15 May 2009 15:23:28 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Fri, 15 May 2009 15:23:28 +0000 (UTC)
X-User: sarro
In-Reply-To: <guju7d$2ev$1@inews.gazeta.pl>
User-Agent: Thunderbird 2.0.0.16 (Windows/20080708)
Xref: news-archive.icm.edu.pl pl.comp.programming:181907
[ ukryj nagłówki ]Sarr. wrote:
> Michoo wrote:
>> Sarr. pisze:
>>> witam,
>>>
>>> jedno pytanie do grupy: jak w c/c++ zasymulowac random number
>>> generator z delphi?
>>>
>>> wikipedia twierdzi, ze jest to Linear congruential generator
>>> [http://en.wikipedia.org/wiki/Linear_congruential_ge
nerator] i nawet
>>> podaje parametry, ale jakos nie udalo mi sie uzyskac zadowalajacych
>>> wynikow.
>> W sensie co było nie tak z funkcją rand()?
>>
>> Jest posixowa funkcja random o sporych możliwościach, ale będziesz jej
>> mógł użyć pewnie tylko na gcc.
>>
> nie chodzi o dobry czy lepszy random - chodzi o dostanie identycznych
> wynikow jak daje random z delphi6.
>
> pisze plugin w c++ do programu, ktory napisany byl w delphi6 wlasnie.
> lwia czesc funkcjonalnosci idzie do pluginu a trzeba zachowac zgodnosc
> wstecz.
>
>
> pozdrawiam,
>
> Sarr.
sam sobie odpowiem. sprawa rozwiazana, problemem bylo uzywanie przez
mnie wartosci signed/unsigned. w kazdym razie, dla zainetersowanych,
ponizej dzialajaca klasa symulujaca random z delphi6:
class DelphiRandom
{
public:
DelphiRandom(unsigned int seed)
{
SetSeed(seed);
}
void SetSeed(unsigned int seed)
{
_seed = seed;
}
int Next(const int max)
{
unsigned long long result = (unsigned long long)GetNext() * max;
return (int)(result >> 32);
}
private:
unsigned int GetNext()
{
// X[n+1] = ( a * X[n] + c ) % m
// m = 232
// a = 134775813 [0x08088405]
// c = 1
_seed = _seed * 0x08088405 + 1; // %m not needed as _seed is 32 bit
return _seed;
}
unsigned int _seed;
};
cheers,
Sarr.
Najnowsze wątki z tej grupy
- C++. Podróż Po Języku - komentarz
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
Najnowsze wątki
- 2025-04-09 Czy blokowanie sali obrad Sejmu przez PO-opozycje pod rządami PiS już się przedawniło? [mecenas Giertych dołki kopie?]
- 2025-04-09 Koniec produkcji Leapmotor T03
- 2025-04-09 Pruszków => Specjalista ds. public relations <=
- 2025-04-09 Rzeszów => International Freight Forwarder <=
- 2025-04-09 Ryga => Konsultant Wdrożeniowy Comarch XL/Optima (Księgowość i Kad
- 2025-04-09 Poznań => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-04-09 Chrzanów => Spedytor Międzynarodowy (handel ładunkami/prowadzenie f
- 2025-04-09 Warszawa => JavaScript / Node / Fullstack Developer <=
- 2025-04-09 Warszawa => Senior Product Manager <=
- 2025-04-09 Warszawa => Starszy Konsultant SAP FICO <=
- 2025-04-09 Warszawa => NMS System Administrator <=
- 2025-04-07 C++. Podróż Po Języku - komentarz
- 2025-04-08 Warszawa => Presales - Inżynier Wsparcia Technicznego IT <=
- 2025-04-08 Pomnik Polaków w Berlinie - OK! - ale co z ustawą o mniejszości polskiej?
- 2025-04-08 Uniwersytet Jagielloński zawiesza protestujących studentów