Ratkaistu: pi c-kielellä

Viimeisin päivitys: 09/11/2023
Kirjoittaja: C SourceTrail

C-ohjelman kirjoittaminen vakion Pi:n laskemiseksi on loistava tapa syventyä ohjelmoinnin matematiikan perusteisiin. Tässä oppaassa opit vaiheittaisen selityksen Pi:n laskemiseen Leibnizin Pi:n kaavalla. Leibnizin kaava Pi:lle esitetään muodossa Pi = 4*(1/1 – 1/3 + 1/5 – 1/7 + 1/9 – 1/11 …).

Leibnizin kaava Pi:lle on ääretön sarjaesitys Pi:stä, jonka saksalainen matemaatikko Gottfried Leibniz löysi 17-luvulla.

Aloitus: Vaaditut kirjastot C

Aloitetaan puhumalla kirjastoista, joita tarvitsemme tässä ohjelmassa. Käytämme tavallista matemaattista kirjastoa

[#include <math.h>]

ja kirjasto standarditulo-/tulostustoimintoja varten

[#include <stdio.h>]

.

  • math.h: Tämä kirjasto sisältää erilaisia ​​matemaattisia funktioita ja makroja.
  • stdio.h: Se sisältää sekä vakiotulo- että lähtötoimintojen ilmoituksen.

Leibnizin kaavan toteuttaminen Pi:lle C:ssä

Tässä on perusesimerkki siitä, miltä tämä toteutus voi näyttää. Huomaa, että käytämme for-silmukkaa toistaaksemme sarjan termejä. Tämä koodi laskee Pi:n likiarvon kymmenentuhanteen termiin asti.

#sisältää
#sisältää

double laskeaPi(int term) {
kaksoispi = 0.0;
int merkki = 1;
for (int i = 0; i < termi; i++) { pi += (merkki * (1.0 / (2.0 * i + 1))); merkki *= -1; } pi*= 4.0; paluu pi; } int main() { printf("Pi:n likiarvo: %fn", laskePi(10000)); paluu 0; } [/koodi]

Säännöstön selitys

LaskePi-funktiossa, asetamme aluksi pi:ksi 0.0 ja etumerkiksi 1. Funktio ottaa argumentin 'termi', joka ilmaisee laskettavien termien lukumäärän sarjassa.

Koodi syöttää sitten silmukan arvosta i = 0 annettuun termiin. Jokaisessa iteraatiossa jaetaan 1 luvulla '2i+1' ja lisätään tai vähennetään se juoksevasta pi:stä riippuen siitä, onko i parillinen vai pariton luku. Tätä ohjaa "merkki"-muuttuja, joka vaihtelee 1:n ja -1:n välillä kussakin iteraatiossa, ja siksi kerromme kokonaismäärämme "merkillä".

Silmukasta poistuttuamme kerromme summan neljällä (Leibnizin kaavan mukaan) ja palautamme arvon. Tulos on Pi:n approksimaatio.

"Main"-funktio yksinkertaisesti tulostaa Pi:n likiarvon kymmenentuhanteen termiin asti kutsumalla "calculatePi"-funktiota.

Yhteenvetona voidaan todeta, että vaikka Pi:n laskeminen Leibnizin kaavalla ei ehkä ole tehokkain tai tarkin, se toimii erinomaisena johdatuksena matematiikan toteuttamiseen ohjelmointiin, erityisesti C:ssä.

Related viestiä: