Kaksi kaavaa piin laskemiseksi

1. Kerran muinoin keksin pii'lle kaavan

lim(2^(n 1)B(n,2n-1)(1 (2n-1)/3 (2n-1)(2n-3)/(3*5) ... (2n-1)(2n-3)*..*(n 3)/(3*5*..*(n-1))) ->pii.

Tässä B(n,2n-1) tarkoittaa binomikertoimen käänteislukua. n on parillinen. Parittomille n tulee hieman toisenlainen kaava.Laskennan helpottamiseksi ylläolevaa kaavaa voi vielä vähän yksinkertaistaa.
Piin laskeminen 1 milj. desimaalin tarkkuudella vei aikaa n. 5 tuntia. (2.6 GHz prosessorin tietokoneella). Kaava on siitä huono että tämä alkaa olla yläraja laskentatarkkuudelle, sillä esim. 10 milj numeron laskeminen veisi aikaa jo 3 viikkoa. Tämä piin lauseke on hyvin helppo ohjelmoida kun on ensiksi tehnyt ohjelmat suurten lukujen laskemiseksi, yhteenlaskun, kertolaskun ja jakojaskun.

2. Talvella johdin edellisestä kaavan

pii=2 2*S(j!/(2j 1)!! , j=1,2,3...

Tässä S tarkoittaa sitä mitä yleensä merkitään sigmalla.
Tällä kaavalla laskin kokeeksi piin 100 000 desimaalia, ja tehtävästä se selvisi 1 min. 52 sek'ssa. Tämä on noin kaksi kertaa nopeampi kuin kaava 1. Pienten pii-arvojen laskemiseksi nämä ovat nopeita kaavoja. Esim 4000 desimaalia tulee silänräpäyksessä.
91227
Äänestä

Muut lukivat myös

Vastaukset 9

Vanhimmat

Hienoa että olet ollut puuhakas matematiikan saralla mutta mitä helvettiä me muut hyödymme höpötyksestäsi?

Äänestä

Jos kerran olet keksinyt sarjan, joka suppenee piihin, niin suppeneeko se varmasti? Mistä tuollainen päähänpälkähdys on tullut? Miten sen suppenemisen perustelee? Onko käytössä tarpeeksi järeää koneistoa tuon raja-arvon löytämiseksi? Vai onko kyseessä vain laskennallisesti huomattu tosiasia? Tai mikä vielä tärkeämpää, onko se uusi keksintö, vai ainoastaan jokin oppikirjasta kopioitu esimerkki? Uuden keksiminen on tietysti ilahduttavaa , mutta ennen kuin sitä menee mainostamaan millään palstalla, niin kannattaa ottaa selvää lauseen todenperäisyydestä.

Äänestä
  • Piistä voi kehittää laskentakaavoja erilaisin geometrisin menetelmin. Muistaakseni joskus kauan sitten piti kotitehtävänä koulussa johtaa piille kaava käyttäen siniä ja/tai kosinia. Siihen kaavaan voikin sitten vaikka sijoittaa niiden sarjakehitelmät, ja varmasti saadaan sarja joka suppenee piihin.

    Helpoimmat tavat on varmasti jo keksitty, mutta ei se estä keksimästä pyörää aina uudelleen.

    Äänestä

Tuosta ensimmäisestä kaavasta ei saa kyllä mitään
selkoa. Mutta tarkoitatko toisella kaavalla

pii=2 2*S(j!/(2j 1)!! , j=1,2,3...

kenties tällaista:

2 2*(1!/3!! 2!/5!! 3!/7!! ...)

Se tosiaan suppenee nopeasti, mutta ei kyllä
lähellekään piitä:

1!/3!! = 1/720
2!/5!! = 2.9897587696e-199

joten arvo 10:llä desimaalilla on

2.0027777778

mikä ei ole lähellekään piitä!

Äänestä
  • Merkintä 3!! ei tarkoita kolmen kertoman kertomaa. Kolmen kertoman kertoma merkittäisiin (3!)!.
    Kyseessä on niin kutsuttu double factorial, ks.

    http://mathworld.wolfram.com/DoubleFactorial.html

    Tietääkö kukaan onko tuolle suomenkielistä termiä, kaksoiskertoma tms?

    Äänestä

Painaa taskulaskimesta sitä jakkara-merkkiä ja vot!

Uusi kaava laskea liku 2(kaksi):

15*2/6*2/5=2

Äänestä

No on se hyvä, että joku osaa tuonkin laskea riittävän tarkasti, kun tulee käyttöä.

Eikun tsemppiä vaan sinne.

Äänestä

Laita se ohjelma esille, jollei se ole jotenkin salainen. Voisi olla kiinnostava tsiikata.

Äänestä
  • Ei ohjelma ole mitenkään salainen, mutta en tiedä miten toimitaan. Ilmeisesti tarkoitat C- ja konekieliohjelmaa, etkä varsinaista näistä tulevaa tuotetta joka sitten laskee piin.

    Äänestä

Kommentoi aloitusta


HeTu kirjoitti:

1. Kerran muinoin keksin pii'lle kaavan

lim(2^(n 1)B(n,2n-1)(1 (2n-1)/3 (2n-1)(2n-3)/(3*5) ... (2n-1)(2n-3)*..*(n 3)/(3*5*..*(n-1))) ->pii.

Tässä B(n,2n-1) tarkoittaa binomikertoimen käänteislukua. n on parillinen. Parittomille n tulee hieman toisenlainen kaava.Laskennan helpottamiseksi ylläolevaa kaavaa voi vielä vähän yksinkertaistaa.
Piin laskeminen 1 milj. desimaalin tarkkuudella vei aikaa n. 5 tuntia. (2.6 GHz prosessorin tietokoneella). Kaava on siitä huono että tämä alkaa olla yläraja laskentatarkkuudelle, sillä esim. 10 milj numeron laskeminen veisi aikaa jo 3 viikkoa. Tämä piin lauseke on hyvin helppo ohjelmoida kun on ensiksi tehnyt ohjelmat suurten lukujen laskemiseksi, yhteenlaskun, kertolaskun ja jakojaskun.

2. Talvella johdin edellisestä kaavan

pii=2 2*S(j!/(2j 1)!! , j=1,2,3...

Tässä S tarkoittaa sitä mitä yleensä merkitään sigmalla.
Tällä kaavalla laskin kokeeksi piin 100 000 desimaalia, ja tehtävästä se selvisi 1 min. 52 sek'ssa. Tämä on noin kaksi kertaa nopeampi kuin kaava 1. Pienten pii-arvojen laskemiseksi nämä ovat nopeita kaavoja. Esim 4000 desimaalia tulee silänräpäyksessä.

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