Article View: be.comp.programming
Article #3655Re: [VB6] Random getallen (integers) uit rij kiezen
From: Ares Lagae
Date: Sun, 23 Nov 2003 20:35
Date: Sun, 23 Nov 2003 20:35
46 lines
2422 bytes
2422 bytes
"Digibyte" <digibyte@pieter.verhaeghe-textiel.be> wrote in message
news:3fc0f172$0$28453$ba620e4c@reader0.news.skynet.be...
> Hoe kan ik het best het volgende programmeren:
> Ik moet een willekeurig aantal getallen kiezen (vb. 10) uit een rij
getallen
> die optelt van 0 tot x. (vb. 0, 1, 2, 3, 4, 5, 6, ..., 99)
>
> Ik heb dit al gevonden om 1 getal eruit te halen:
> Randomize
> randomValue = Int(100 * Rnd)
>
Als je rij getallen niet supergroot is, en in de veronderstelling dat je
geen 2 keer eenzelfde getal wil, kan je het eenvoudig als volgt doen:
c++ code, want ik ken geen VB (en wil ook niet :-)
/* maak array 0, 1, 2, ... */
int array[100];
for (unsigned int i = 0; i < 100; i++)
{
array[i] = i;
}
/* randomize */
for (unsigned int i = 0; i < 100; i++)
{
for (unsigned int j = 0; j < 100; j++)
{
if (rand() < (RAND_MAX / 2))
{
std::swap(array[i], array[j]);
}
}
}
de taak van
if (rand() < (RAND_MAX / 2))
is dat de swap met ongeveer 50 % kans uitgevoerd wordt.
dan geeft array[0] ... array[n-1] je de eerste n willekeurige getallen
(PS: eigenlijk is deze vraag niet VB6 specific)
Groetjes,
Ares Lagae
Technical Details
Message-ID:
<1069619650.151416@seven.kulnet.kuleuven.ac.be>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!fu-berlin.de!fr.ip.ndsoftware.net!193.190.198.58.MISMATCH!aotearoa.belnet.be!naxos.belnet.be!news.belnet.be!not-for-mailReferences:
<3fc0f172$0$28453$ba620e4c@reader0.news.skynet.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: fcea4,a769f0ff60b66e08 X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2003-11-23 12:34:12 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news2.google.com!fu-berlin.de!fr.ip.ndsoftware.net!193.190.198.58.MISMATCH!aotearoa.belnet.be!naxos.belnet.be!news.belnet.be!not-for-mail From: "Ares Lagae" <ares.lagae@student.kuleuven.ac.be> Newsgroups: be.comp.programming Subject: Re: [VB6] Random getallen (integers) uit rij kiezen Date: Sun, 23 Nov 2003 21:35:07 +0100 Organization: KULeuvenNet Lines: 48 Message-ID: <1069619650.151416@seven.kulnet.kuleuven.ac.be> References: <3fc0f172$0$28453$ba620e4c@reader0.news.skynet.be> NNTP-Posting-Host: seven.kulnet.kuleuven.ac.be X-Trace: naxos.belnet.be 1069619650 25976 134.58.127.12 (23 Nov 2003 20:34:10 GMT) X-Complaints-To: abuse@belnet.be NNTP-Posting-Date: Sun, 23 Nov 2003 20:34:10 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1158 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165 Cache-Post-Path: seven.kulnet.kuleuven.ac.be!unknown@10-67-122-222.kotnet.org X-Cache: nntpcache 2.4.0b5 (see http://www.nntpcache.org/)