Beregn pi med X decimaler

Dette forum bruges på EGET ANSVAR til at lege med scripts og andre ting med risiko for at beskadige sit eget og andres systemer.
Brugeravatar
NickyThomassen
Admin
Indlæg: 3650
Tilmeldt: 5. mar 2010, 19:58
IRC nickname: nicky
Geografisk sted: 192.168.20.42

Beregn pi med X decimaler

Indlæg af NickyThomassen »

Jeg ved ikke om i har set det, men på Wikipedia fandt jeg følgende kode:

Kode: Vælg alt

<?php
set_time_limit(0);
echo '<br />';
 
$digits=1000;
$pival='1';
$str1='';
while ($pirow<2000)
    {
    $pirow+=1;
    $pisubrow=0;
    $tempval='0';
    while ($pisubrow<$pirow)
        {
        $tempval=bcsqrt(bcadd('2',$tempval,$digits),$digits);
        $pisubrow+=1;
        sleep(1);
        }
    $tempval=bcdiv('2',$tempval,$digits);
    $pival=bcmul($tempval,$pival,$digits);
    unset($tempval);     
    $tempval=bcmul('2',$pival,$digits);
    $common = array();
    $length = (strlen($str1) >= strlen($tempval)) ? strlen($str1) : strlen($tempval);
    for($x=0;$x<$length;$x++){
        if($str1[$x] == $tempval[$x]){
            $common[] = $str1[$x];
        }else{
            break;
        }
    }
    if ($pirow>5)
        {
        echo 'pi='.substr(join('',$common),0,-2);
        }
    unset($str1);
    $str1=$tempval;   
    unset($tempval);
    echo '<p>';
    flush();
    sleep(1);
    }
$pival=bcmul($pival,'2',$digits);
unset($pirow);
?>


Jeg sidder og kigger på koden blive afviklet i en terminal nu, og den er nået til pi=3.1415926535897 :)

Scriptet kan fx bruges til at teste hvor hurtigt en computer kan regne et bestemt antal decimaler ud. Som det står her er der dog en sleep(1) indarbejdet, så scriptet ikke beslaglægger alle ressourcerne på computeren.

Ganske underholdende, tænkte jeg ville dele.

(nu er den nået til pi=3.1415926535897932)
laoshi
Redaktør
Indlæg: 5515
Tilmeldt: 26. apr 2008, 20:52
IRC nickname: laoshi
Geografisk sted: Vejle

Re: Beregn pi med X decimaler

Indlæg af laoshi »

Jamen, er det ikke enestående hvad man kan få en dum maskine til at foretage sig?
Kan ikke huske, hvornår jeg sidst har haft brug for at bruge pi, men det er da altid rart at vide hvordan, hvis behovet skulle opstå.
(Og det må vel næsten være en form for meditation at se på hvordan tallene formerer sig i terminalen - eller måske kan det fremkalde en 'sleep'-funktion?)
"Von guten Mächten wunderbar geborgen
erwarten wir getrost was kommen mag.
Gott ist mit uns am Abend und am Morgen
Und ganz gewiss an jedem neuen Tag"

(Dietrich Bonhoeffer 1906-1945)

http://www.stromata.dk
https://wiki.ubuntu.com/FlemmingChristensen
https://launchpad.net/~laoshi
thj01
Indlæg: 2667
Tilmeldt: 21. nov 2006, 10:06
Geografisk sted: Fredericia

Re: Beregn pi med X decimaler

Indlæg af thj01 »

Den vil også være god til at dræne batteriet med ;) Processoren kommer til at bruge fuld skrue ;).
Forfatter til Ubuntuguiden: http://www.vidas.dk/guides/ubuntuguiden.html

Kører LTS udgaverne.

"It's always easy if you know how to do it."
Brugeravatar
NickyThomassen
Admin
Indlæg: 3650
Tilmeldt: 5. mar 2010, 19:58
IRC nickname: nicky
Geografisk sted: 192.168.20.42

Re: Beregn pi med X decimaler

Indlæg af NickyThomassen »

thj01 skrev:Den vil også være god til at dræne batteriet med ;) Processoren kommer til at bruge fuld skrue ;).

Det er så sandt som det er sagt :)

laoshi skrev:(Og det må vel næsten være en form for meditation at se på hvordan tallene formerer sig i terminalen - eller måske kan det fremkalde en 'sleep'-funktion?)

Det er det faktisk også. Den fylder næsten 2 linier nu, og jeg har lidt på fornemmelsen at der er rigtig langt op til de 1000 decimaler. Den er kommet til
pi=3.14159265358979323846264338327950288419716939937510582097494459230781640628620899862803482534211706798214808651328230664
Brugeravatar
Christian.Arvai
Admin
Indlæg: 10724
Tilmeldt: 26. apr 2008, 19:27
IRC nickname: Christian_Arvai
Geografisk sted: Holeby - Lolland

Re: Beregn pi med X decimaler

Indlæg af Christian.Arvai »

Jeg bruger det tit for tiden. Men det er hurtigere at sige 22/7'ende dele :D
Med venlig hilsen Christian

"We can only see a short distance ahead, but we can see plenty there that needs to be done." -- Alan Turing
Brugeravatar
NickyThomassen
Admin
Indlæg: 3650
Tilmeldt: 5. mar 2010, 19:58
IRC nickname: nicky
Geografisk sted: 192.168.20.42

Re: Beregn pi med X decimaler

Indlæg af NickyThomassen »

christian.arvai skrev:Jeg bruger det tit for tiden. Men det er hurtigere at sige 22/7'ende dele :D

Jeg er bange for at jeg bringer dårlige nyheder så, for 22/7 er allerede forkert i tredje decimal... Men har de fleste lommeregnere ikke et pi-tegn (π) ?

22/7 = 3.142
π = 3.141

Ifølge Wikipedia skulle denne metode være nøjagtig helt ud til 30 decimaler:
Billede

Nu er den oppe på
pi=3.1415926535897932384626433832795028841971693993751058209749445923
078164062862089986280348253421170679821480865132823066470938


Det kunne være man skulle prøve og lade diskstationen tygge på det i nogle måneder. Kan det passe at jeg læser i sciptet at det holder pause i 1 sekund hver gang et decimal er blevet fundet?
thj01
Indlæg: 2667
Tilmeldt: 21. nov 2006, 10:06
Geografisk sted: Fredericia

Re: Beregn pi med X decimaler

Indlæg af thj01 »

http://www.eveandersson.com/pi/digits/1000000

oG SÅ SLUT MED DET GG


PS

Pi er et transcentalt tal http://en.wikipedia.org/wiki/Transcendental_number, så alle formler vil fejle ;)
Forfatter til Ubuntuguiden: http://www.vidas.dk/guides/ubuntuguiden.html

Kører LTS udgaverne.

"It's always easy if you know how to do it."
Brugeravatar
Christian.Arvai
Admin
Indlæg: 10724
Tilmeldt: 26. apr 2008, 19:27
IRC nickname: Christian_Arvai
Geografisk sted: Holeby - Lolland

Re: Beregn pi med X decimaler

Indlæg af Christian.Arvai »

Er denne tråd nørdernes "min er større end din" tråd ? :D
Med venlig hilsen Christian

"We can only see a short distance ahead, but we can see plenty there that needs to be done." -- Alan Turing
Brugeravatar
NickyThomassen
Admin
Indlæg: 3650
Tilmeldt: 5. mar 2010, 19:58
IRC nickname: nicky
Geografisk sted: 192.168.20.42

Re: Beregn pi med X decimaler

Indlæg af NickyThomassen »

1 million decimaler af pi...
Så er det bare et finde et mønster, og vente på anerkendelsen :)

Og i det er der vel et problem, for hvis ingen formler er korrekte til udregningen af pi, hvordan regner vi så decimalerne ud? Og hvis ikke vi bruger den "rigtige" formel, er det så overhovedet givet at der er et mønster?

Matematik: det sidste sted man skal gå hen hvis man leder efter logik ;)
thj01
Indlæg: 2667
Tilmeldt: 21. nov 2006, 10:06
Geografisk sted: Fredericia

Re: Beregn pi med X decimaler

Indlæg af thj01 »

TitanusEramius skrev:1 million decimaler af pi...
Så er det bare et finde et mønster, og vente på anerkendelsen :)

Og i det er der vel et problem, for hvis ingen formler er korrekte til udregningen af pi, hvordan regner vi så decimalerne ud? Og hvis ikke vi bruger den "rigtige" formel, er det så overhovedet givet at der er et mønster?

Matematik: det sidste sted man skal gå hen hvis man leder efter logik ;)



Som matematiker må jeg sige at det du skriver er noget vrøvl gg

MEN.....

At man ikke kan finde en eksakt værdi er overhovedet ikke det samme som at man ikke kan regne det ud.

1/7 = 0,142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857142857....

sqrt (2) er et andet tale som heller ikke kan regnes eksakt ud. Men det kan bevises ret elegant.

og her er en million cifre: http://apod.nasa.gov/htmltest/gifcity/sqrt2.1mil


Og vil du finde en talrække i PI kan du søge her imellem de første 200.000.000 cifre:
http://www.angio.net/pi/piquery. Mine første 6 cifre ligger ca 300.000 tal nede i rækken ;). Men går jeg efter 9 cifre må den give op.....




Matematik er logisk, men at oversætte matematik til vores forståelsessprog viser blot en ting. Der er en årsag til at matematikere udtrykker sig ved hjælp af tal, formler og begreber. Og der er også en årsag til at selv matematikere/fysikere ikke VIL acceptere kvantemekanikken - for der går selv matematikkens sprog hen og bliver mangetydigt. Matricier FTW

Billede

googol = 10¹⁰⁰ --- et ufatteligt stort tal - man regner f.eks med at der er 10⁸⁰ atomer i universet. Men alligevel tangerer hver enkelt af vores hjerner det samme tal i antallet af forbindelser mellem synapser....

Prøv bare at udskriv den første million cifre i pi 10⁶.. Hvis vi regner med at der er ca 3800 tegn på en side, så er det altså

1.000.000/3800 = 2632 sider => 10 sider i minuttet = 263,2 min = 4 timer og 24 minutter

PS. jeg har en gang måttet redde en printserver fra "døden" ved at rive stikket ud af væggen gg - det er nogle år siden, men en elev mente at det måtte være sjovt at prøve. PS - det var en windows et eller andet... tror

hmmm - me like tal......
Forfatter til Ubuntuguiden: http://www.vidas.dk/guides/ubuntuguiden.html

Kører LTS udgaverne.

"It's always easy if you know how to do it."
Brugeravatar
Christian.Arvai
Admin
Indlæg: 10724
Tilmeldt: 26. apr 2008, 19:27
IRC nickname: Christian_Arvai
Geografisk sted: Holeby - Lolland

Re: Beregn pi med X decimaler

Indlæg af Christian.Arvai »

Jeg vil også lege med :D

Men jeg kan ikke lige starte scriptet :

Kode: Vælg alt

c@c-desktop:~$ sudo ~/udregn_pi.sh
[sudo] password for c:
/home/c/udregn_pi.sh: 1: cannot open ?php: No such file
/home/c/udregn_pi.sh: 2: Syntax error: word unexpected (expecting ")")
c@c-desktop:~$

Det er gemt som "~/udregn_pi.sh" og tilladdelserne til kørsel er givet.
Med venlig hilsen Christian

"We can only see a short distance ahead, but we can see plenty there that needs to be done." -- Alan Turing
Brugeravatar
NickyThomassen
Admin
Indlæg: 3650
Tilmeldt: 5. mar 2010, 19:58
IRC nickname: nicky
Geografisk sted: 192.168.20.42

Re: Beregn pi med X decimaler

Indlæg af NickyThomassen »

Det kan jeg godt hjælpe med :)
Det er fordi det er et php-script at det ikke virker. Tjek først at du har php installeret (jeg tror ikke versionen betyder noget), og så kør

Kode: Vælg alt

php -f FILNAVN

Jeg tror hverken du har brug for filendelse eller kørselsrettigheder, det virker som om at php indlæser scriptet, og så køre det.

Den kommer sikkert med at par småfejl, men hos mig begyndte den at køre alligevel.
Brugeravatar
NickyThomassen
Admin
Indlæg: 3650
Tilmeldt: 5. mar 2010, 19:58
IRC nickname: nicky
Geografisk sted: 192.168.20.42

Re: Beregn pi med X decimaler

Indlæg af NickyThomassen »

Det smarte ved at lave det i php eller tilsvarende web-venligt programmeringssprog, skulle være at det kan integreres i en hjemmeside, og så kan webserveren stå og tygge på det.
Brugeravatar
Christian.Arvai
Admin
Indlæg: 10724
Tilmeldt: 26. apr 2008, 19:27
IRC nickname: Christian_Arvai
Geografisk sted: Holeby - Lolland

Re: Beregn pi med X decimaler

Indlæg af Christian.Arvai »

TitanusEramius skrev:Det kan jeg godt hjælpe med :)
Det er fordi det er et php-script at det ikke virker. Tjek først at du har php installeret (jeg tror ikke versionen betyder noget), og så kør

Kode: Vælg alt

php -f FILNAVN

Jeg tror hverken du har brug for filendelse eller kørselsrettigheder, det virker som om at php indlæser scriptet, og så køre det.

Den kommer sikkert med at par småfejl, men hos mig begyndte den at køre alligevel.

JA, det var løsningen at installere følgende først:

Kode: Vælg alt

sudo apt-get install php5-cli

og så køre :

Kode: Vælg alt

php -f ~/udregn_pi.sh
Med venlig hilsen Christian

"We can only see a short distance ahead, but we can see plenty there that needs to be done." -- Alan Turing
Brugeravatar
NickyThomassen
Admin
Indlæg: 3650
Tilmeldt: 5. mar 2010, 19:58
IRC nickname: nicky
Geografisk sted: 192.168.20.42

Re: Beregn pi med X decimaler

Indlæg af NickyThomassen »

Og jeg har lige fundet én af de helt store fordele ved at bruge en duo-cpu: jeg fjernede de 2 sleep i scriptet, med det resultat at den ene kerne køre 100% indtil den er færdig, men fordi bash kun køre på 1 kerne som standard, så låser systemet ikke :)

Men det går sgu' lidt hurtigere uden sleep....