|
| Tilfældige tal Fra : rasmusrst@gmail.com |
Dato : 27-03-07 18:17 |
|
Hej
Jeg prøver, med bds2006, at lave et program som udregner intergraler
på en lidt alternativ måde, vhja. noget sandsynligherdssregning,
skoleprojekt. Til det skal jeg bruge en masse tilfældige tal. Jeg har
set på routinen rand() men den giver mig ikke nok decimaler. Vil
faktisk gerne have n antal decimaler. Men kan ikke få rand til at give
mig tal større end ~100000, hvilket ikke er nok hvis beregningerne
skal blive præcise. Er der en måde at modificere rand() funktionen,
eller findes der en anden måde?
På forhånd tak!
Mvh. Rasmus S.
| |
Bertel Lund Hansen (27-03-2007)
| Kommentar Fra : Bertel Lund Hansen |
Dato : 27-03-07 18:47 |
|
rasmusrst@gmail.com skrev:
> faktisk gerne have n antal decimaler. Men kan ikke få rand til at give
> mig tal større end ~100000
Du kan jo gange to af tallene med hinanden. Så kan du komme op på
10^10 osv.
--
Bertel
http://bertel.lundhansen.dk/ http://fiduso.dk/
| |
Thormod Johansen (28-03-2007)
| Kommentar Fra : Thormod Johansen |
Dato : 28-03-07 14:51 |
|
"Bertel Lund Hansen" <unospamo@lundhansen.dk> wrote in message
news:1bfr3mbemh87v.1xwyhp3bt1hvx$.dlg@40tude.net...
> rasmusrst@gmail.com skrev:
>
>> faktisk gerne have n antal decimaler. Men kan ikke få rand til at give
>> mig tal større end ~100000
>
> Du kan jo gange to af tallene med hinanden. Så kan du komme op på
> 10^10 osv.
Og hvordan bliver sandsynlighedsfordelingen af tal så, Bertel?
| |
rasmusrst@gmail.com (27-03-2007)
| Kommentar Fra : rasmusrst@gmail.com |
Dato : 27-03-07 19:11 |
|
Hej
Ja, det kan man, men så bliver fordelingen af de tilfældige tal ikke
jævn mellem det givne interval, men tættere mod de højere værdier,
eller lavere hvis de er under en.
Mvh. Rasmus S.
| |
Bertel Brander (27-03-2007)
| Kommentar Fra : Bertel Brander |
Dato : 27-03-07 19:33 |
|
rasmusrst@gmail.com skrev:
> Hej
>
> Ja, det kan man, men så bliver fordelingen af de tilfældige tal ikke
> jævn mellem det givne interval, men tættere mod de højere værdier,
> eller lavere hvis de er under en.
google har 2370000 hits på random number generator, de fleste
er sandsynligvis bedre end den der følger med compileren.
--
Just another homepage:
http://damb.dk
But it's mine - Bertel
| |
Mogens Hansen (28-03-2007)
| Kommentar Fra : Mogens Hansen |
Dato : 28-03-07 17:47 |
|
<rasmusrst@gmail.com> wrote in message
news:1175015791.422165.321770@b75g2000hsg.googlegroups.com...
[8<8<8<]
> Er der en måde at modificere rand() funktionen,
Det tror jeg ikke.
> eller findes der en anden måde?
Kig på Boost::random
http://www.boost.org/libs/random/index.html
som udgør grundlaget for det random number system der er i C++ Standarden
TR1 - altså noget der kommer til en compiler i nærheden af dig snart.
--
Venlig hilsen
Mogens Hansen
| |
Anders Mølbjerg Lund (02-04-2007)
| Kommentar Fra : Anders Mølbjerg Lund |
Dato : 02-04-07 17:38 |
|
<rasmusrst@gmail.com> skrev i en meddelelse
news:1175015791.422165.321770@b75g2000hsg.googlegroups.com...
>Hej
>Jeg prøver, med bds2006, at lave et program som udregner intergraler
>på en lidt alternativ måde, vhja. noget sandsynligherdssregning,
>skoleprojekt.
Monte carlo?
> Til det skal jeg bruge en masse tilfældige tal. Jeg har
>set på routinen rand() men den giver mig ikke nok decimaler. Vil
>faktisk gerne have n antal decimaler.
Hvad med
r0*10^0+r1*10^1+r2*10^2 +...+ rn*10^n
hvor r0...rn er tilfældige tal mellem 0 og 9. Måske ikke det mest effiktive,
dog.
Mvh
Anders Lund
| |
Thormod Johansen (07-04-2007)
| Kommentar Fra : Thormod Johansen |
Dato : 07-04-07 20:54 |
|
"Anders Mølbjerg Lund" <06amlSLETDETTE@nanostud.aau.dk> wrote in message
news:4611314a$0$90276$14726298@news.sunsite.dk...
> <rasmusrst@gmail.com> skrev i en meddelelse
> news:1175015791.422165.321770@b75g2000hsg.googlegroups.com...
>>Hej
>>Jeg prøver, med bds2006, at lave et program som udregner intergraler
>>på en lidt alternativ måde, vhja. noget sandsynligherdssregning,
>>skoleprojekt.
> Monte carlo?
>
>> Til det skal jeg bruge en masse tilfældige tal. Jeg har
>>set på routinen rand() men den giver mig ikke nok decimaler. Vil
>>faktisk gerne have n antal decimaler.
>
> Hvad med
> r0*10^0+r1*10^1+r2*10^2 +...+ rn*10^n
> hvor r0...rn er tilfældige tal mellem 0 og 9. Måske ikke det mest
> effiktive, dog.
Det bliver vel heller ikke uniformt.
| |
Anders Mølbjerg Lund (10-04-2007)
| Kommentar Fra : Anders Mølbjerg Lund |
Dato : 10-04-07 21:49 |
|
"Thormod Johansen" <test@invalid.invalid> skrev i en meddelelse
news:ev8se8$v9n$1@news.net.uni-c.dk...
>> Hvad med
>> r0*10^0+r1*10^1+r2*10^2 +...+ rn*10^n
>> hvor r0...rn er tilfældige tal mellem 0 og 9.
> Det bliver vel heller ikke uniformt.
Hvorfor skulle den metode farvorisere nogle tal frem for andre?
Mvh
Anders Lund
| |
Thormod Johansen (10-04-2007)
| Kommentar Fra : Thormod Johansen |
Dato : 10-04-07 22:19 |
|
"Anders Mølbjerg Lund" <06amlSLETDETTE@nanostud.aau.dk> wrote in message
news:461bf84e$0$90273$14726298@news.sunsite.dk...
> "Thormod Johansen" <test@invalid.invalid> skrev i en meddelelse
> news:ev8se8$v9n$1@news.net.uni-c.dk...
> >> Hvad med
>>> r0*10^0+r1*10^1+r2*10^2 +...+ rn*10^n
>>> hvor r0...rn er tilfældige tal mellem 0 og 9.
>> Det bliver vel heller ikke uniformt.
>
>
> Hvorfor skulle den metode farvorisere nogle tal frem for andre?
Jeg havde læst det som om, det var kontinuert uniformt fordelte tal mellem 0
og 1. Hvis det er en sampling med lige stor sandsynlighed fra mængden
{0,...,9}, er det rigtigt nok, som du skrev, en brugbar løsning.
| |
Anders Mølbjerg Lund (15-04-2007)
| Kommentar Fra : Anders Mølbjerg Lund |
Dato : 15-04-07 15:33 |
|
"Thormod Johansen" <test@invalid.invalid> skrev i en meddelelse
news:evguh7$8j5$1@news.net.uni-c.dk...
>> Hvorfor skulle den metode farvorisere nogle tal frem for andre?
>
> Jeg havde læst det som om, det var kontinuert uniformt fordelte tal mellem
> 0 og 1. Hvis det er en sampling med lige stor sandsynlighed fra mængden
> {0,...,9}, er det rigtigt nok, som du skrev, en brugbar løsning.
Det er jo ingenting der er kontinuert når det er numerisk. Kontinuitet
kræver jo uendelig præcision.
Mvh
Anders Lund
| |
Thormod Johansen (15-04-2007)
| Kommentar Fra : Thormod Johansen |
Dato : 15-04-07 19:36 |
|
"Anders Mølbjerg Lund" <06amlSLETDETTE@nanostud.aau.dk> wrote in message
news:46223787$0$90273$14726298@news.sunsite.dk...
> "Thormod Johansen" <test@invalid.invalid> skrev i en meddelelse
> news:evguh7$8j5$1@news.net.uni-c.dk...
>
>>> Hvorfor skulle den metode farvorisere nogle tal frem for andre?
>>
>> Jeg havde læst det som om, det var kontinuert uniformt fordelte tal
>> mellem 0 og 1. Hvis det er en sampling med lige stor sandsynlighed fra
>> mængden {0,...,9}, er det rigtigt nok, som du skrev, en brugbar løsning.
>
> Det er jo ingenting der er kontinuert når det er numerisk. Kontinuitet
> kræver jo uendelig præcision.
Så du mener, at man aldrig kan simulere en kontinuert fordeling på en
computer?
| |
Martin M. Pedersen (05-04-2007)
| Kommentar Fra : Martin M. Pedersen |
Dato : 05-04-07 21:41 |
|
rasmusrst@gmail.com wrote:
> Hej
>
> Jeg prøver, med bds2006, at lave et program som udregner intergraler
> på en lidt alternativ måde, vhja. noget sandsynligherdssregning,
> skoleprojekt. Til det skal jeg bruge en masse tilfældige tal. Jeg har
> set på routinen rand() men den giver mig ikke nok decimaler.
bds2006 ?
Anyway, prøv at se på:
http://www.lns.cornell.edu/spr/1999-01/msg0014148.html
Mvh
Martin
| |
Arne Vajhøj (06-04-2007)
| Kommentar Fra : Arne Vajhøj |
Dato : 06-04-07 02:27 |
|
Martin M. Pedersen wrote:
> rasmusrst@gmail.com wrote:
>> Jeg prøver, med bds2006, at lave et program som udregner intergraler
>> på en lidt alternativ måde, vhja. noget sandsynligherdssregning,
>> skoleprojekt. Til det skal jeg bruge en masse tilfældige tal. Jeg har
>> set på routinen rand() men den giver mig ikke nok decimaler.
>
> bds2006 ?
Borland Developer Studio 2006
> Anyway, prøv at se på:
> http://www.lns.cornell.edu/spr/1999-01/msg0014148.html
Generelt skal man nok holde sig til de mest kendte algoritmer
uden at forsøge at forbedre dem (medmindre man tilfældigvis er
PhD i matematik med special i tal teori).
Arne
| |
Martin M. Pedersen (07-04-2007)
| Kommentar Fra : Martin M. Pedersen |
Dato : 07-04-07 16:18 |
|
Arne Vajhøj wrote:
> Martin M. Pedersen wrote:
>> Anyway, prøv at se på:
>> http://www.lns.cornell.edu/spr/1999-01/msg0014148.html
>
> Generelt skal man nok holde sig til de mest kendte algoritmer
> uden at forsøge at forbedre dem (medmindre man tilfældigvis er
> PhD i matematik med special i tal teori).
>
vel, en PhD er ikke nødvendig. Anyway alle funktioner i URL'en som jeg
gav klarer sig ret godt i DieHard-testene, så de er gode.
/Martin
| |
|
|