paras pii

Aina joskus harrastuksena on piin laskeminen miljoonan desimaalin tarkkuudella jollakin itse keksityllä kaavalla ja menetelmällä. Mietin mikähän olisi mahdottoman nopea tapa piin laskemiseksi. Ja arvelin keksineeni: Etsitään rutiinilaskulla rationaalilukujen jono, os/nim (os=osoittaja, nim=nimittäjä), joka antaa piille yhä tarkemman lukuarvon. Sitten tästä jonosta ehkä voisi päätellä rekursiokaavat os(oittajalle) ja nim(ittäjälle). Ensiksi valitaan luku 13/4. Seuraavat ovat 16/5, 19/6, 22/7. Tästä näkyy heti sääntö, että osoittaja kasvaa aina 3:lla ja nimittäjä 1:llä. Ne laskevat ylhäältä päin kohti piitä. Seuraava olisi 25/8, mutta tämä ei ole enää parannus. Tulee pitkä aukko ja seuraavaksi paras pii on 179/57, joka on vähän piin alapuolella. Tästä eteenpäin seuraa taas säännöllinen jakso, jossa osoittaja kasvaa aina luvulla 22 (=edellisen jakson viimeinen osoittaja) ja nimittäjä luvulla 7 (=edellisen jakson viimeinen nimittäjä). Näin saadaan rationaalilukujen jono, joka lähestyy piitä alhaalta päin. Tullaan lukuun 355/113. Seuraava olisi 377/120, mutta se ei ole enää parannus. Taas tulee pitkä aukko ja seuraava on 52163/16604, ja sitä seuraava 52518/16717. Nytkin osoittajan lisäys on aina edellisen jakson viimeinen osoittaja, ja nimittäjän lisäys edellisen jakson viimeinen nimittäjä. Jono noudattaataas taas tätä sääntöä pitkään. Näin jatkoin aina lukuun paraspii(180) asti, ja yleistä sääntöä siitä ei huomaa. Varsinkin säännöllisten jaksojen jälkeisten hyppäyksien pituutta ei voi ennustaa, ja lisäksi siellä näkyy olevan yksi rytmihäiriö. Niin että eipä tullut mitään. Kokeilin samaa menetelmää nj(3):een (nj=neliönjuuri), ja siitä huomaa heti kolmen jaksoissa hyppivät rekursiokaavat os(n 3)=2*os(n) 3*nim(n), nim(n 3)=os(n) 2*nim(n). Näistä on helppo tehdä ohjelma, joka laskee joka kolmannen rationaaliluvun parasnj(3). Tässä vaiheessa huomasin, ettei menetelmä onnistuessaankaan olisi ollut mitenkään hyvä. Paljon nopeammin nj(3):lle laskee 100000 desimaalia suoraan vaikkapa kaavasta nj(3)=2*(1-1/4)^(1/2) kuin rekursiokaavojen avulla.
3602
Äänestä

Muut lukivat myös

Vastaukset 3

Vanhimmat

Opettelin aikoinani (79...80...) ala-asteen kuudennella luokalla hetken mielijohteesta piin 30 desimaalin tarkkuudella ulkoa. Piirsin sen taululle. Nyt jo edesmennyt ankara opettajamme pyyhki pois kirjoitukseni ja nöyryyttäen julisti, että tässä on eksakti, se ainoa oikea 22/7. No... hän oli oikeesti liikunnanopettaja ja urheiluvalmentaja, jonka yleisopetuksen uhreiksi aikoinaan jouduimme.

Äänestä
  • tuosta lannistunut. Meitä opettajiahan on kyllä kaikenlaisia tässä kaikkivaltiaan karjassa.

    Äänestä

Ketjusta on poistettu 1 sääntöjenvastainen viesti.

Kommentoi aloitusta


piiip kirjoitti:

Aina joskus harrastuksena on piin laskeminen miljoonan desimaalin tarkkuudella jollakin itse keksityllä kaavalla ja menetelmällä. Mietin mikähän olisi mahdottoman nopea tapa piin laskemiseksi. Ja arvelin keksineeni: Etsitään rutiinilaskulla rationaalilukujen jono, os/nim (os=osoittaja, nim=nimittäjä), joka antaa piille yhä tarkemman lukuarvon. Sitten tästä jonosta ehkä voisi päätellä rekursiokaavat os(oittajalle) ja nim(ittäjälle). Ensiksi valitaan luku 13/4. Seuraavat ovat 16/5, 19/6, 22/7. Tästä näkyy heti sääntö, että osoittaja kasvaa aina 3:lla ja nimittäjä 1:llä. Ne laskevat ylhäältä päin kohti piitä. Seuraava olisi 25/8, mutta tämä ei ole enää parannus. Tulee pitkä aukko ja seuraavaksi paras pii on 179/57, joka on vähän piin alapuolella. Tästä eteenpäin seuraa taas säännöllinen jakso, jossa osoittaja kasvaa aina luvulla 22 (=edellisen jakson viimeinen osoittaja) ja nimittäjä luvulla 7 (=edellisen jakson viimeinen nimittäjä). Näin saadaan rationaalilukujen jono, joka lähestyy piitä alhaalta päin. Tullaan lukuun 355/113. Seuraava olisi 377/120, mutta se ei ole enää parannus. Taas tulee pitkä aukko ja seuraava on 52163/16604, ja sitä seuraava 52518/16717. Nytkin osoittajan lisäys on aina edellisen jakson viimeinen osoittaja, ja nimittäjän lisäys edellisen jakson viimeinen nimittäjä. Jono noudattaataas taas tätä sääntöä pitkään. Näin jatkoin aina lukuun paraspii(180) asti, ja yleistä sääntöä siitä ei huomaa. Varsinkin säännöllisten jaksojen jälkeisten hyppäyksien pituutta ei voi ennustaa, ja lisäksi siellä näkyy olevan yksi rytmihäiriö. Niin että eipä tullut mitään. Kokeilin samaa menetelmää nj(3):een (nj=neliönjuuri), ja siitä huomaa heti kolmen jaksoissa hyppivät rekursiokaavat os(n 3)=2*os(n) 3*nim(n), nim(n 3)=os(n) 2*nim(n). Näistä on helppo tehdä ohjelma, joka laskee joka kolmannen rationaaliluvun parasnj(3). Tässä vaiheessa huomasin, ettei menetelmä onnistuessaankaan olisi ollut mitenkään hyvä. Paljon nopeammin nj(3):lle laskee 100000 desimaalia suoraan vaikkapa kaavasta nj(3)=2*(1-1/4)^(1/2) kuin rekursiokaavojen avulla.

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu