[Anfänger] Zu wenig nachkommazahlen angezeigt

»JAM«

Grünschnabel
Hallo,
wir haben heute in Physik über diese Aufgabe geredet:
4x³ + 7x² - 8x +7

ich hab mir einfach mal den Spaß gemacht ein kleines Programm zur berechnung zu schreiben, weil unser lehrer sagte das man das per hand nicht ausrechnen kann.
Code:
#include <iostream.h>
#include <math.h>
#include <windows.h>

double x = -0.1;
double ergebnis;

double rechnung()
{
     
    
    
    ergebnis=((4.0*pow(x, 3.0))+(7.0*pow(x, 2.0))-(8.0*x)+7.0);
    
    cout << "\n\n"; 
    x = x + 0.0000000001;
    
  return 0;     
}

int main()
{
    int start;
    bool bRechne = false;
 
 cout <<"Berechnung von x aus folgender Aufgabe:\n";
 cout <<"4x"<<char(252)<<" + 7x"<<char(253)<<" - 8x + 7 = 0\n\n";  //kann man das "³" auch andest schreiben als mit char()?
 cout <<"starten? ja(1) nein(2):  ";
 cin  >>start;
  
 if (start = 1)
 {
    do
    {
      
      cout << rechnung();
      cout << "ergebnis: " << ergebnis;
      cout << "\n\nx: " << x;
      
      if(ergebnis == 0)
      {
      bRechne = true;
      cout <<"ergebnis: " << ergebnis;
      cout <<"\n\nx: " << x;
      system("pause");
      }

      if(ergebnis = 0)
      {
      bRechne = true;
      cout <<"ergebnis: " << ergebnis;
      cout <<"\n\nx: " << x;
      system("pause");
      }
      
     }
     while (!bRechne);
  }
  

cout <<"\n\n";
system("pause");  //damit das Fenster nicht sofort geschlossen wird
return 0;

}

damit ist mein Rechner ne weile beschäftigt.. :)
So, hier ist mein Problem aber, dass ich zu wenig Nachkommastellen angezeigt bekomme, kann man das ändern oder gibt es noch ne andere Möglichkeit x zu bestimmen?

PS:ich verwende Dev C++

Gruß
JAM
 
Zuletzt bearbeitet:
Mit printf("%f10.9", variablefloatoderdouble); kannste mit 10.9 z.b. 10 Vorkomma, und 9 Nachkommastellen anzeigen lassen.

Es gibt auch für cout Möglichkeiten das zu verändern, leider weis ich die nicht auswendig...
 
Für cout gibt es folgenden Code, du musst aber die iomanip einbinden:
Code:
cout << setprecision(9) << Zahl;
Dort wird einfach, die Präzision auf 9 gesetzt. Allerdings gilt das nur für den nächsten, folgenden Wert.
 
Meines wissens stellt man mit setprecision() standardmäßig die Anzahl der Stellen insgesamt ein. Um mit setprecision nur die Anzahl der Nachkomma stellen musst du noch cout << fixed; in deinen Quellcode einfügen. So wird das Ergebins auch immer ohne Exponent angezeigt.
 
Zurück