/ / Exponentiation Pascal-ohjelmointikielellä: vinkkejä ja temppuja

Exponentiation Pascal-ohjelmointikielellä: vinkit ja temput

Kielten määrä on suuriohjelmointi, ja Pascal ei heidän joukossaan ole viimeinen paikka. Ja jos aiotte osallistua vakavasti ohjelmointiin tulevaisuudessa, sinun pitäisi aloittaa tutustuminen tähän maailmaan tämän kielen tutkimuksella, koska se on yksinkertaisempi käsitys ja tärkeintä, että ohjelma on täysin ilmainen.

Tässä artikkelissa keskustelemme tällaisesta vaikeasta ongelmasta,eksponentiaalisena. Pascal, valitettavasti, ei tarjoa meille erillistä operaattoria tämän ongelman ratkaisemiseksi, toisin kuin muut ohjelmointikielet. Joten tässä on välttämätöntä, kuten sanotaan, päästä eroon improvisoiduista keinoista, turvautumalla sykleihin ja matemaattisiin operaattoreihin - täällä voimme antaa mielikuvituksemme. Katsotaanpa useita menetelmiä tämän ongelman ratkaisemiseksi.

Anna meille yksinkertaisin tehtävä, jossa tietty määrä on nostettava positiiviseen tutkintoon. Oletetaan, että numero a pystyssä 4 asteen. Tässä on yksinkertainen matemaattinen toimenpide suoritetaan: b = * * *.

Ohjelma teksti
Seuraava vaihe meidän Let's hankaloittaa ja valmistella yleisiä ohjelma, jokapystyssä, mitään mitään myönteisen tutkinto. täällä on mahdollisuus hyödyntää jokin sykli, mutta mielestämme yksinkertaisempi tapa laskenta silmukkaan.Kuvaa vasemmalla löydät meidän ohjelma kokonaisuudessaan, ja selittää toiminnot.Muuten, sleduetotmetit, että määrä a valinnaisen Kokonaisluku, ja voit esimerkiksi Real, se asettaisi murtoluvuksi.

Aiemmat esimerkit pozvoljajutnam pystyssä numerot vain koko polozhitelnnye verran.Mutta haasteita, jossa sinun täytyy rakentaa numeron desimaali tutkinto.Jos kirjoitat tällaisen ohjelman tarvitsemme tietoa ominaisuuksia logaritmit. erityisesti: ab= eb ln. Sieltä tämä haluttu osa meidän ohjelma on: r: = exp (b ln)Mutta täällä olemme siitä, että jetotoperatorWorks ei nolla ja negatiiviset luvut ohjelmaamme tehdä potenssi 0, Määritä ehto: jos b = 0 sitten r = 1 Else r = exp (b ln).Mutta negatiivinen numero vygljaditvozvedenie tutkinto?

Ohjelma teksti

Pascal zastavljaetnas uudelleen ajattelu. Tässä on tarpeen tuottaa tämän toiminnon meidän numerot ja Palauta tiedot negatiivisin tuloksin.Tarkista pariteetti: tutkinto oli outoa, jos otamme peräisinmoduuli tulos. Tällaisessa tapauksessa mielestämme ohjelma-budetimet: r: = (-1) * exp (b ln (abs (a))) Jos Round (b/2) = (b) / 2 sitten r: = abs (r). Kunto tarkistaa vielä tai ei.

Näin ollen siirrymme yleinen malli meidän ohjelma, jokatyöskennellä numerot, eli nyt pitäisi yhdistää yhdeksi kokonaisuudeksi kaikki edellä.Kuva oikealla näet valmiin ohjelman kokonaisuudessaan.Huomaa, tietotyyppi on määritetty. otpervoj ohjelmaa käytetään tässä Todellinenkoska täällä teemme jo kaikki numerot ja ei vain kokonaislukuja.Joten, potenssi reaalilukujen täysin pidimme. tarkastella vain yksi kysymys jäljellä.

Ohjelma teksti
Siirtymässä hänet sleduetotmetit, tämä tehtävä edellyttää melko syvä tuntemus ohjelmoinnissa.Kompleksiluvun potenssi on täällä voit kokeilla käyttää erilaisia ratkaisuja, esimerkiksi de Moivre kaava, mutta on olemassa käännös kompleksiluvun trigonometriset muodossa.Onko ratkaisu tähän tehtävään työ menettelystä kertomalla kaksi kompleksiluvut ja yksinkertainen laskenta silmukka, eliToista tämä useita kertoja yhtä degree. ymmärrät tarkemmin ohjelman tekstin esimerkki.

Lue lisää: