C++ Anzahl der Iterationen

Gast #2169385
Huhu
ich hätte da nochmal ne Frage zur C++ Programmierung.

Ich habe eine Aufgabe, bei der ich die Wurzel einer Zahl durch eine 
Näherung berechnen soll.
Das bekomm ich soweit noch hin, nur ich soll im nächsten Aufgabenteil 
den Code so erweitern das noch die Anzahl der Iterationen ausgegeben 
wird.
So wie in meinem Code funktioniert es nicht aber er berechnet mir 
zumindest die richtigen Werte...
Hat vllt. jemand von euch eine Idee wie ich das umschreiben könnte?
Achja das sqrt(x) unten hab ich nur reingeschrieben damit ich eine 
Kontrolle hab ob er auch richtig rechnet.



Vielen Dank



1
#include <iostream>
2
#include <math.h>
3
using namespace std;
4

5
int main () 
6
{
7
  double x;
8
  double w;
9
  int i;
10
  int k;
11
  
12
    
13
  cout << "geben sie eine Zahl x > 0 ein: " ;cin >> x;
14
  k=x;
15
  w=x;
16
  if (x > 0){
17
  do
18
  {
19
    w = 0.5*(w + x/w);
20
    ++i;
21
  }
22
  
23
  
24
  while ( (((w*w-x) /x) > 0.000001,i < k ) );
25
  }
26
  else {
27
    cout << "Die Eingabe war keine Positive Zahl" << endl;
28
       }
29
    cout <<"Die Wurzel dieser Zahl lautet:" << w << endl;
30
    cout <<"Anzahl der Iterationen: " << i << endl;
31
    cout <<" " << sqrt (x) << endl;
32
    
33

34

35
    
36

37
return 0;
38
}
Gast
Krabs schrieb:
> kannst du mir evtl. noch erklären warum das so ist? Ich komm da
> irgendwie nicht drauf.

Ist einfach so definiert. Automatische und dynamisch allozierte 
Variablen werden nicht initialisiert, es steht einfach irgendwas drin. 
Bei Static- und globalen Variablen ist das anders. Da gibts erstmal 
nichts zum Verstehen, das wurd einfach mal so definiert.
Gast
wenn mans mal von der hardwareseite sieht: ein register hat beim 
einschalten natürlich alle bits auf 0, sicher gehen kann man sich 
dennoch nicht.
ausser es existiert ein definierter reset wert.

dass der compiler das überhaupt gemacht hat, verwundert mich allerdings.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 15 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.