Ergebnis 1 bis 9 von 9

Thema: For Schleife wird nicht durchlaufen

  1. #1
    HTML Newbie
    Registriert seit
    18.12.2007
    Beiträge
    4
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard For Schleife wird nicht durchlaufen

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

    using namespace std;

    main()
    {
    int intJahr, i;
    float fltKredit, fltProzent, fltRate, fltTilgung, fltZinsen, fltRest;

    intJahr = 0;
    fltZinsen = 0;

    cout<<"Bitte geben Sie den Kreditbetrag in Euro ein:"<<endl;
    cin>>fltKredit;

    cout<<"Bitte geben Sie den Zinssatz in Prozent ein:"<<endl;
    cin>>fltProzent;

    cout<<"Bitte geben Sie die Rate in Euro ein:"<<endl;
    cin>>fltRate;

    i=0;

    for (i = 0;i <=20;i++)
    {
    intJahr = i + 1;

    fltZinsen = fltRest * fltProzent / 100;

    fltTilgung = fltRate - fltZinsen;

    fltRest = fltRest - fltTilgung;

    cout<<i, fltRest, fltZinsen, fltTilgung, fltRate;

    }

    }

    Vielleicht könnt ihr mir helfen. Die For schleife wird gar nicht durchlaufen
    Wo ist der fehler

    lg anki
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Fortgeschrittene/r
    Registriert seit
    26.09.2005
    Ort
    Nürnberg
    Beiträge
    169
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Also ich bin dafür, dass hier eine Prügelstrafe eingeführt wird für Leute, welche die Code-Tags nicht nutzen! Solche Code-Schnippsel kann doch keiner lesen...

    Zu deinem Problem, bzw. erstmal ein paar Tipps:

    1. die main Funktion sollte so aussehen:

    Code:
    int main&#40;&#41;
    // oder
    int main&#40;int argc, char* argv&#91;&#93;&#41;
    
    // aber nicht
    void main&#40;&#41; // falsch! das ist kein C++ standard!
    2. direkt vor der for-Schleife steht bei dir ein "i = 0;" -> das kannst du dir sparen, da du im for-Schleifenkopf i auf 0 setzt. Desweiteren würde ich i auch erst dort anlegen, dass hilft der Übersicht und du brauchst i nirgends anders:

    Code:
    for&#40;int i=0; i<=20; ++i&#41;
    &#123;
       // do something
    &#125;
    3. dein Programm geht sicher in die for-Schleife, aber dort wird es abstürzen (bzw. undefiniertes Verhalten)! Denn du nutzt "fltRest" ohne es initialisiert zu haben. Das knallt gewaltig.

    4. du nutzt cout völlig falsch, ich denke du willst folgendes erreichen:

    Code:
    cout << i << " " << fltRest << " " << fltZinsen << " " << fltTilgung << " " << fltRate << endl;
    5. falls du C++ lernst: bitte verwende anstatt <math.h> die <cmath> Header. Diese <XXX.h> Header sind "veraltet" und sollten nur in reinem C verwendet werden.

  3. #3
    HTML Newbie
    Themenstarter

    Registriert seit
    18.12.2007
    Beiträge
    4
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Code:
    #include <stdio.h>//#include<cstdio>
    #include <iostream>
    #include <fstream>
    #include <math.h>//#include<cmath>
    
    using namespace std;
    
    //main&#40;&#41;
    int main&#40;&#41;
    &#123;
    int intJahr, i;
    float fltKredit, fltProzent, fltRate, fltTilgung, fltZinsen, fltRest;
    
    intJahr = 0;
    fltZinsen = 0;
    
    
    cout<<"Bitte geben Sie den Kreditbetrag in Euro ein&#58;"<<endl;
    cin>>fltKredit;
    
    cout<<"Bitte geben Sie den Zinssatz in Prozent ein&#58;"<<endl;
    cin>>fltProzent;
    
    cout<<"Bitte geben Sie die Rate in Euro ein&#58;"<<endl;
    cin>>fltRate;
    
    i=0;
    fltRest = fltKredit;
    for &#40;i = 0;i <=20;i++&#41;
    &#123;
    intJahr = i + 1;
    
    fltZinsen = fltRest * fltProzent / 100;
    
    fltTilgung = fltRate - fltZinsen;
    
    fltRest = fltRest - fltTilgung;
    
    //cout<<i, fltRest, fltZinsen, fltTilgung, fltRate;
    cout<<i<<" "<<fltRest<<" "<< fltZinsen<<" "<< fltTilgung<<" "<< fltRate<<endl;
    
    &#125;
    cin.get&#40;&#41;;//Hält Fenster offen
    &#125;
    danke aber irgendwie läuft es trotzdem nicht

  4. #4
    Shogun Avatar von DarkSyranus
    Registriert seit
    28.03.2006
    Ort
    ::1/128
    Alter
    25
    Beiträge
    3.446
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard

    Ich misch mich hier mal ein ...

    1. Der Quelltext sieht grauenvoll aus.
    Code:
    	#include <cstdio>
    	#include <iostream>
    	#include <fstream>
    	#include <cmath>
    
    	using namespace std;
    
    
    	int main&#40;&#41;
    	&#123;
    		short intJahr, i;
    		float fltKredit, fltProzent, fltRate, fltTilgung, fltZinsen, fltRest;
    
    		intJahr = 0;
    		fltZinsen = 0;
    
    
    		cout << "Bitte geben Sie den Kreditbetrag in Euro ein&#58;" << endl;
    		cin >> fltKredit;
    
    		cout << "Bitte geben Sie den Zinssatz in Prozent ein&#58;" << endl;
    		cin >> fltProzent;
    
    		cout << "Bitte geben Sie die Rate in Euro ein&#58;" << endl;
    		cin >> fltRate;
    
    		fltRest = fltKredit;
    
    		for&#40;i = 0; i <= 20; i ++&#41;
    		&#123;
    			intJahr = i +1;
    
    			fltZinsen = fltRest *fltProzent /100;
    			fltTilgung = fltRate -fltZinsen;
    			fltRest = fltRest -fltTilgung;
    
    			cout << i << " " << fltRest << " " << fltZinsen << " " << fltTilgung << " " << fltRate << endl;
    
    		&#125;
    
    		cin.get&#40;&#41;;
    	&#125;
    2. Bei mir läuft das ganze durch, auch wenn es evtl. nicht das macht, was es soll.


  5. #5
    HTML Newbie
    Themenstarter

    Registriert seit
    18.12.2007
    Beiträge
    4
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Bei mir schließt das fenster sofort nach der eingabe

  6. #6
    Shogun Avatar von DarkSyranus
    Registriert seit
    28.03.2006
    Ort
    ::1/128
    Alter
    25
    Beiträge
    3.446
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard

    Welchen Compiler benutzt du?
    Unter Windows nutze ich Dev C++.
    Ist zwar nicht der modernste, aber er läuft bei mir einwandfrei.
    Probier sonst mal einen anderen Compiler.

    Btw. die include Datei fstream ist meiner Meinung nach für Dateioperation zuständig, willst du später die Ergebnisse in Datein schreiben?
    Wenn ja, würde ich auch die Header-Datei erst später includieren (also sobald du mit Datein arbeitest), das hat den Vorteil, dass man nur den Code wirklich einbindet, den man braucht und somit die Performance des Programms evtl. steigert.

  7. #7
    Fortgeschrittene/r
    Registriert seit
    26.09.2005
    Ort
    Nürnberg
    Beiträge
    169
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Zitat Zitat von anki
    Bei mir schließt das fenster sofort nach der eingabe
    Ach das ist dein Problem, jetzt versteh ich es. Schau doch mal den Code von DarkSyranus an, er hat am Ende ein cin.get() -> das sollte das Schließen des Fensters verhindern.

    Desweiteren würde ich mir die Tipps von ihm auch zu Herzen nehmen, du solltest den Code wirklich einrücken um die Lesbarkeit zu erhöhen.

  8. #8
    HTML Newbie
    Themenstarter

    Registriert seit
    18.12.2007
    Beiträge
    4
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    das cin.get habe ich auch schon drin

    danke für eure hilfe ich möchte die ergebnisse nicht in eine datei schreiben ich möchte sie einfach nur ausgeben

    als compiler nutze ich dev c++

  9. #9
    Shogun Avatar von DarkSyranus
    Registriert seit
    28.03.2006
    Ort
    ::1/128
    Alter
    25
    Beiträge
    3.446
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings
    Blog-Einträge
    1

    Standard

    Habe mal das ganze unter Windows probiert.

    Code:
       #include <cstdio>
       #include <iostream>
       #include <cmath>
    
       using namespace std;
    
    
       int main&#40;&#41;
       &#123;
         /* ... */
    
          system&#40;"PAUSE"&#41;;
          return EXIT_SUCCESS;
       &#125;

Ähnliche Themen

  1. Ava wird nicht angezeigt
    Von Allegra im Forum Forum-Hilfe.de intern
    Antworten: 2
    Letzter Beitrag: 16.08.2008, 14:36
  2. Kann eine Grafik in einer anderen Grafik durchlaufen
    Von Bianca77 im Forum Forum für Grafiken und Bildbearbeitung
    Antworten: 6
    Letzter Beitrag: 09.07.2007, 09:04
  3. Schleife und übergehen nicht existenter ip's
    Von Odo im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 1
    Letzter Beitrag: 24.05.2007, 10:24
  4. For() schleife wird nur einmal durchgegangen??
    Von SonicChriz im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 6
    Letzter Beitrag: 16.05.2006, 21:57
  5. Mysql Spalte durchlaufen lassen mit aktion und update
    Von ::RMB:: im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 2
    Letzter Beitrag: 04.04.2006, 20:11

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •