Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Wechselnde Vorzeichen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
20.01.2004, 16:21 Uhr
Sag



Also die Aufgabe lautet, das man PI immer näher berechnen soll.

Quasi:

Pi=(1-1/3+1/5-1/7+1/9-1/11+1/13-...)*4

Der Benutzer kann eingeben in wie weit es gehen soll.


C++:
int n,pi,a=1;

cout << "Wie weit soll die Reihe für Pi gebildet werden? ";
cin >> n;

for(int i=1;i<=n;i++)
   {
      pi=(a-1)*4;
      a=+2;
      pi=(a+1)*4;
   }



Mein Problem ist, wenn ich jetzt 1 Reihe oder 3 als Beispiel eingeben, geht er das ganze dennoch komplett durch, sprich 2 oder viermal. Mir fällt einfach nichts ein wie ich das +/- abwechseln einfügen kann.

Danke für Eure Hilfe !
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
20.01.2004, 16:26 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


ohne das zu testen würd ich sagen so...

C++:
double pi=0;
int i,n,b=1;
for(i=0;i<n;i++,b=-b)pi+=(double)b/(2*i+1) ;
pi*=4;





Bearbeitung:

upsi das mal 4 hab ich gar nicht gesehen.... gleich mal verbessert


--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 20.01.2004 um 16:34 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
20.01.2004, 16:27 Uhr
virtual
Sexiest Bit alive
(Operator)


Du wirst wenig Spaß haben, wenn Du pi als int deklarierst...
Ansonsten:

C++:
int n;
double pi = 0;

cout << "Wie weit soll die Reihe für Pi gebildet werden? ";
cin >> n;

int vz = 1;
for(int i=1;i<=n;i+=2, vz=-vz)
      pi += (double)vz*4/i;


--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)

Dieser Post wurde am 20.01.2004 um 16:27 Uhr von virtual editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
20.01.2004, 16:28 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


@virtual

--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
20.01.2004, 16:31 Uhr
Sag



Kann nicht hinkommen virtual, weil bei 1 Reihe 4 rauskommt, wo aber 0 rauskommen müsste ?!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
20.01.2004, 16:37 Uhr
virtual
Sexiest Bit alive
(Operator)


Die folge iteriert korrekt. Die Frage, bis zu selchem Glied gerechnet werden soll je nach eingabe, weiß ich nicht, weil ich Deine vorgabe nicht vrstanden habe. Sollte aber kein Problem sein.
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
20.01.2004, 16:53 Uhr
Sag



Pi=(1-1/3+1/5-1/7+1/9-1/11+1/13-...)*4
Schreiben Sie ein Programm, welches nach diesem Verfahren Pi berechnet. Da sich das Ergebnis immer weiter der tatsächlichen Zahl Pi annähert, je weiter die Reihe berechnet wird, soll das Programm vor der Berechnung fragen, wie weit die Reihe gebildet werden soll, damit keine unendliche Schleife entsteht.



Ist die Aufgabe , theorethisch müsste nach einem Durchlauf 0 rauskommen oder ? Bei deiner Programmierung kommt aber 4 raus auch bei Windalf. Ich steig da net durch :/
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
20.01.2004, 16:54 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


nein nach einem durchlauf muss 4 rauskommen weil 1*4=4 ist...
das erste glied in der klammer ist doch ne 1 und keine 0
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
20.01.2004, 17:01 Uhr
~Sag
Gast


Hmm 1-1=0 0*4=0 oder net ? *g*
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
20.01.2004, 17:05 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


ja deine gleichung ist richtig hat aber wenig mit der formel oben zu tun...

da steht doch (1 -1/3 + 1/5 -1/7 ....)*4

wenn du also bis zum 1. Glied rechnest bleibt da nur

(1 )*4

bis zum zweiten

(1 - 1/3) *4

zum dritten

(1- 1/3 +1/5)*4 usw...

jetzt alles klar?
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: