Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

[Zadatak] Napisati program koji izračunava približnu vrijednost broja PI=3.14159

[es] :: C/C++ programiranje :: C/C++ za početnike :: [Zadatak] Napisati program koji izračunava približnu vrijednost broja PI=3.14159

[ Pregleda: 3493 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

chalka
chalka chalka
BiH

Član broj: 74148
Poruke: 16
*.dlp180.bih.net.ba.



Profil

icon [Zadatak] Napisati program koji izračunava približnu vrijednost broja PI=3.1415914.11.2005. u 23:10 - pre 224 meseci
POKUSAO SAM uraditi sljedeci zadatak
naveo sam pokusaj (u donjem dijelu) i pojasnjenje ali nesto ne valja pa molim za pomoc sto prije!!!!!

1. Napisati program koji izračunava približnu vrijednost broja π=3.14159... koristeći slijedeću
formulu:
π = 4⋅(1 – 1 / 3 + 1 / 5 - 1 / 7 + 1 / 9-1 / 11 +....)
Program se treba prekinuti u trenutku kada apsolutna vrijednost clana sume koji se treba
sabrati bude manja od nekog broja eps koji se unosi na početku programa i koji zapravo
definira preciznost izračunavanja. Taj uneseni broj eps treba biti u rasponu 0.0001 do 0.1.
Ako broj eps nije u tom rasponu, program daje poruku «Broj nije u trazenom rasponu» i
završava.
Na primjer, ako je unesen broj eps=0.0000023 program će dati poruku «Broj nije u zadanom
rasponu» i završit će se njegovo izvođenje. Ako je sa tastature unesen, na primjer, broj
eps=0.01 program će izračunati sumu prema datoj formuli sve dok vrijedi da je član koji se
dodaje na sumu veći od 0.01, a to znači da će apsolutna vrijednost zadnjeg dodanog člana biti
1/99.
Zadatak treba riješiti koristeći while petlju

Ja sam pokusao sa ovim ali nesto ne ide javlja mi sintaksicku gresku
Moje rezmisljanje oko ovog koda koji sam dole naveo je: nakon sto sam postavio
uslov za eps i da li je taj broj u inervalu ili ne presao sam dalje na petlju
pocevsi od n=1
opsti clan ovog gore niza je: (-1)^(na)(n+1)/2*n+1 bar koliko sam ja mogao skontati i isporobao sam cini mi se da je to to
e sada stavim da ce se operacija ponavljati sve dok opsti clan ne postane manji od eps
sve dotle ce se taj clan izracunavati i nadodavati na sumu s koja ce poslije pomnozena sa 4 davati vrijednost pi po formuli navedenoj u postavci zadatka
da li mi je logika ispravna i da li postoji neka druga funkcija za stepenovanje posto ova
nevalja za x<=0
ili ima li neki jednostavniji nacin kako da se dobije rijesenje
citao sam ovaj pokusaj na stranici sto je neko drugi vec radio ali ne kontam prvo kako je dobio one opste clanove a ni dalji rad
Molim pomozite!!!
CODE:
#include<stdio.h>
#include<math.h>
#define gg 0.1
#define dg 0.0001
int main()
{
float eps,a,b,c,d,n,pi,s;
printf("Unesite vrijednost eps gdje je [0.0001<eps<0.01]:");
scanf("%f", &eps);
s=0;
if (eps<dg||eps>gg)
{
printf("\nBroj nije u zadanom rasponu!\n");
}
else
{
n=1;

while((1/(2*n-1))<eps)
{
s=s+(pow(-1,n+1))/(2*n-1);
n++;
}
pi=4*s;
printf("\nBroj pi iznosi: %f", pi);
}

}
 
Odgovor na temu

3MAJ86
Marko Radić
Business Development Manager, Beauty
Industry
München

Član broj: 46087
Poruke: 253
*.ppp-bg.sezampro.yu.

Sajt: marko-radic.blogspot.com


+137 Profil

icon Re: [Zadatak] Napisati program koji izračunava približnu vrijednost broja PI=3.1415915.11.2005. u 05:42 - pre 224 meseci
mislim da se ovaj problem stvarno prečesto javlja na ovom forumu. koristi search malo više...
when there is a why there is no how
 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8632
*.dial.InfoSky.Net.



+2789 Profil

icon Re: [Zadatak] Napisati program koji izračunava približnu vrijednost broja PI=3.1415923.11.2005. u 23:22 - pre 223 meseci
Code:

#include<stdio.h>
#include<math.h>

#define gg 0.1
#define dg 0.0001


int main()
{
    float eps,a,b,c,d,n,pi,s;

    printf("Unesite vrijednost eps gdje je [0.0001<eps<0.01]:");
    scanf("%f", &eps);
    s=0;

    if (eps<dg||eps>gg)
    {
        printf("\nBroj nije u zadanom rasponu!\n");
    }
    else
    {
        n=1;

        while((1/(2.0*n-1))>=eps)
        {
            s=s+(pow(-1,n+1))/(2.0*n-1);
            n++;
        }

        pi=4*s;
        printf("\nBroj pi iznosi: %f\n", pi);
    }
}


Nije ti dobar kriterijum izlaza iz petlje, a takođe, u C-u je 1/2==0. Koristi decimalnu tačku kod realnih konstanti. 1.0/2.0==0.5.
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: [Zadatak] Napisati program koji izračunava približnu vrijednost broja PI=3.14159

[ Pregleda: 3493 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.