Spiele Fanpage-Forum zu X Rebirth, X³: Terran Conflict, X3: Reunion, X2-Die Bedrohung & viele weitere Spiele/Games

X Rebirth, X3: Terran Conflict, X3: Reunion Infos & Spiele-Lösungen, Diskussionen, Tipps Tricks & Cheats/Mods im Fanpage-Forum & weitere Spiele/Games










Aktuelle Zeit: 16.10.2018, 17:40
Willkommen im Xfans Spiele Fanpage-Forum!
Wenn Du auch ein Zocker bist, dann bist Du hier richtig. Du musst registriert sein, um alle Funktionen (schreiben, Bilder ansehen, etc.) dieses Forums nutzen zu können. Benutze das Registrierungsformular um dich kostenlos zu registrieren. Falls Du bereits in diesem Forum registriert bist, kannst du dich hier anmelden. Viel Spaß!


Alle Zeiten sind UTC [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 90 Beiträge ]  Gehe zu Seite 1, 2, 3, 4, 5 ... 9  Nächste
Werbepause ;-)
Autor Nachricht
 Betreff des Beitrags: Kleine Hilfe bei Übungsprogramm (C++)
BeitragVerfasst: 20.07.2008, 19:21 
Offline
Moderator
Moderator
Benutzeravatar

Registriert: 01.07.2007, 14:21
Beiträge: 1669
Wohnort: Lucern-Switzerland
Hallo zusammen!

Bin in letzter Zeit ein bisschen aufs proggen üben versessen und schreib eine kleine Übung nach der anderen :respekt:

Heut Abend hat entweder mein Hirn ein Ausfall oder ich bin einfach noch nicht so geübt im while-und if-Schleifen schreiben :P

Hier der Quelltext:
Skyese hat geschrieben:
#include <iostream>

char J;
char N;
char Abfrage;
int Zahl1;
int Zahl2;

using namespace std;

int main()
{while(Abfrage==J)
{

cout << "Bitte geben Sie eine Zahl ein: ";

cin >> Zahl1;

cout << "\n" << "Bitte geben Sie eine weitere Zahl ein: ";

cin >> Zahl2;

cout << "\n" << "Die Summe aus diesen Zahlen ist " << Zahl1 + Zahl2 << endl << endl;

cout << "Wenn Sie das Programm erneut ausf" << (char)129 << "hren m" << (char)148 << "chten, geben Sie 'J' ein \nund dr";

cout << (char)129 << "cken Sie Enter, wenn nicht geben Sie 'N' ein." << endl;

cin >> Abfrage;
}
if(Abfrage==N)
{
cout << "Das Programm wird beendet.";
return 0;
}
else if(Abfrage!=J)
{
cout<< "Ung" << (char)129 << "ltige Eingabe.";
return 0;
}
else
{
Abfrage = J;

cout << endl;
}
}


Ich weiss nicht ob für einige schon klar ist was der Fehler ist nur so vom anschauen, jedenfalls meldet mir das Prog wenn ich am Ende einen Buchstaben eingeben muss, ob das Prog wiederholt werden muss oder nicht: "Ungültige Eingabe.", egal ob ich 'J', 'N' oder was anderes eingebe...
Suche jetzt schon seit zwei Stunden und hab ihn nicht gefunden... :naja:

Kann mir jemand helfen? :cool:

_________________
Bild


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Kleine Hilfe bei Übungsprog (C++)
BeitragVerfasst: 20.07.2008, 20:10 
Offline
Moderator
Moderator
Benutzeravatar

Registriert: 08.07.2006, 21:35
Beiträge: 3789
Wohnort: SR 2 Normandy
Hm, für mich sieht das korrekt aus.
Entweder spinnt dein Programm oder wir beide haben heute ein Hirn- Blackout... :flop:

_________________
"Mein Fleisch soll im Rinnstein verwesen, damit eure Idee in den Himmel kommt?
Seid ihr besoffen?" - Berchtold Brecht


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Kleine Hilfe bei Übungsprog (C++)
BeitragVerfasst: 20.07.2008, 21:58 
Offline
Administrator
Administrator
Benutzeravatar

Registriert: 15.08.2003, 17:27
Beiträge: 5422
Wohnort: X-Universum
Nabend Skyese :)

also ich kanns Dir jetzt auch nicht sagen aber interessant ist das ja schon.

Du fragst nach der Schleife, ob Abfrage==N, und dann fragst Du ob Abfrage!=J, da kann aber auch N rauskommen. Vielleicht wirfts das Programm da, indem es eben nicht die Bedingung Abfrage==N erfüllen lässt, sondern gleich Abfrage!=J, das ja auch N sein kann :hm:

_________________
greetings...Xfan
Bild
Bild


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Kleine Hilfe bei Übungsprog (C++)
BeitragVerfasst: 20.07.2008, 22:10 
Offline
Industrieller
Industrieller
Benutzeravatar

Registriert: 21.07.2006, 17:57
Beiträge: 274
Wohnort: Sektor Offenburg
nabend
Ich glaub ich weiß wo das problem is:
Du deklarierst zwei chars; j und n ohne Inhalt - Aha. Dann greifst du darauf zu und wunderst dich warum das Programm das nicht erkennt?
Mein Tipp: Lass die Variablen weg und machs so:
Code:
#include <iostream>

char Abfrage;
int Zahl1;
int Zahl2;

using namespace std;

int main()
{
do
{
   cout << "Bitte geben Sie eine Zahl ein: ";
   cin >> Zahl1;
   cout << "\n" << "Bitte geben Sie eine weitere Zahl ein: ";
   cin >> Zahl2;
   cout << "\n" << "Die Summe aus diesen Zahlen ist " << Zahl1 + Zahl2 << endl << endl;
   cout << "Wenn Sie das Programm erneut ausf" << (char)129 << "hren m" << (char)148 << "chten, geben Sie 'J' ein \nund dr";
   cout << (char)129 << "cken Sie Enter, wenn nicht geben Sie 'N' ein." << endl;
   cin >> Abfrage;
   if(Abfrage == 'N')
   {
      cout << "OK, Bye Bye!" << endl;
   }
   else if(Abfrage == 'J')
   {
      cout << "Und noch einmal!" << endl;
   }
   else
   {
      cout << "OMG, was haben Sie jetzt schon wieder angestellt?!" << endl;
   }
}while(Abfrage=='J');
system("PAUSE");
return 0;
}


So passts ;)

@ Xfan
Im Code steht da ein if, dann ein else if. Also: Wenn das, dann das, ansonsten das. ;)

Hoffe konnte helfen,
mfg

_________________
[WIP] C++ Tutorial Kapitel 1-4
Space Cleaner

Bild

Ein Mitglied der VEGeiCoUndGraSonMaWiGeS Bewegung.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Kleine Hilfe bei Übungsprog (C++)
BeitragVerfasst: 21.07.2008, 10:33 
Offline
Moderator
Moderator
Benutzeravatar

Registriert: 26.08.2006, 21:17
Beiträge: 2066
Wohnort: Argon Titan "Sayonara"
Noch ein kleiner Tipp: Wenn du Variablen ohne Inhalt erstellen musst, warum auch immer, dann mache das am besten so:
Code:
char* myChar = NULL;

Sonst können sehr komische Sachen rauskommen. Ansonsten sollte der Code von Thomas Farnham funktionieren.

_________________
Bild
Bild


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Kleine Hilfe bei Übungsprog (C++)
BeitragVerfasst: 21.07.2008, 13:28 
Offline
Administrator
Administrator
Benutzeravatar

Registriert: 15.08.2003, 17:27
Beiträge: 5422
Wohnort: X-Universum
Zitat:
@ Xfan
Im Code steht da ein if, dann ein else if. Also: Wenn das, dann das, ansonsten das


Ja ich weiss was das ist, ich mach sowas jeden Tag. Zwar in PHP aber das sollte egal sein. So allerdings hätte ich es nicht gemacht. Zudem, um 12 Uhr war ich schon bissl müde und musste nach dem Sinn der Abfrage etwas länger hinschauen.
Naja, hauptsache Skyese freut sich über Lösungen :)

_________________
greetings...Xfan
Bild
Bild


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Kleine Hilfe bei Übungsprog (C++)
BeitragVerfasst: 21.07.2008, 17:50 
Offline
Moderator
Moderator
Benutzeravatar

Registriert: 01.07.2007, 14:21
Beiträge: 1669
Wohnort: Lucern-Switzerland
Leute darf ich mir etwas erlauben zu sagen?? ;)
Ihr seid ALLE einfach genial, was man auch fragt wird beantwortet :zustimm:

Für die die es interessiert, das ist der Quellcode der jetzt funktioniert:
Code:
#include <iostream>

char Abfrage = 'J'; //Abfrage wird auf 'J' gesetzt weil nur die von der while-Schleife akzeptiert wird
float Zahl1; //initialisierung der Zahl 1; Wertvergabe folgt mittels cin...
float Zahl2;

using namespace std;

int main()
{
    while(Abfrage=='J') //Start der Schleife mittels Kontrolle des chars Abfrage.
{

cout << "Bitte geben Sie eine Zahl ein: ";

cin >> Zahl1; //Wertvergabe an Zahl1

cout << "\n" << "Bitte geben Sie eine weitere Zahl ein: ";

cin >> Zahl2; //Wertvergabe an Zahl2

cout << "\n" << "Die Summe aus diesen Zahlen ist " << Zahl1 + Zahl2 << endl << endl; //Ausgabe der Summe aus beiden Zahlen

cout << "Wenn Sie das Programm erneut ausf" << (char)129 << "hren m" << (char)148 << "chten, geben Sie 'J' ein \nund dr";

cout << (char)129 << "cken Sie Enter, wenn nicht geben Sie 'N' ein: ";

do
{
cin >> Abfrage; //erneutes Einlesen der Abfrage (am Anfang war ja automatisch 'J')

if(Abfrage=='N') //Abfrage nach Eingabe des Buchstabe N
{
cout << endl << "Das Programm wird beendet, dr" << (char)129 << "cken Sie Enter um zu schliessen." << endl << endl;
cout << (char)184 << " by Skyese!" << endl;
cin.clear();
cin.ignore(cin.rdbuf()->in_avail());
cin.get();
return 0;
}
else if(Abfrage!='J') //Abfrage nach Fehlern bei der Eingabe
{
cout<< endl << "Ung" << (char)129 << "ltige Eingabe. Bitte geben Sie 'J' oder 'N' ein: " << endl;
}
else
{
Abfrage = 'J'; //Abfrage für Wiederholung

cout << endl;
}
}while(Abfrage!='J'&&'N'); //Wenn eine falsche Zahl eingegeben wurde wird die ewig Frage wiederholt bis die Eingabe gültig ist.
}
}


Der Fehler entstand unter anderem durch mein Unwissen wie ich gemerkt habe :D. Ich habe nämlich die Buchstaben initialisiert statt Sie in diese Symbole: ' zu packen... Hab eben noch nicht mit chars gearbeitet sondern mit Zahlen habe mich jetzt erst angefangen zu befassen damit. :juggle:

Naja danke Leutz, vielen Dank an Thomas Farnham der sich die Mühe gemacht hat meinen Code umzuschreiben damit er funzt, aber ich wollte dass es am Anfang eine while-Schleife, nicht eine do-while gibt... Hat mir trotzdem viel geholfen, habe damit meine Fehler ordnen können :top:
Thomas Farnham & all: :bussi:

_________________
Bild


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Kleine Hilfe bei Übungsprog (C++)
BeitragVerfasst: 22.07.2008, 08:30 
Offline
Industrieller
Industrieller
Benutzeravatar

Registriert: 21.07.2006, 17:57
Beiträge: 274
Wohnort: Sektor Offenburg
Freut mich wenn ich helfen konnte ;)

_________________
[WIP] C++ Tutorial Kapitel 1-4
Space Cleaner

Bild

Ein Mitglied der VEGeiCoUndGraSonMaWiGeS Bewegung.


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Kleine Hilfe bei Übungsprog (C++)
BeitragVerfasst: 22.07.2008, 16:40 
Offline
Moderator
Moderator
Benutzeravatar

Registriert: 01.07.2007, 14:21
Beiträge: 1669
Wohnort: Lucern-Switzerland
Xfan hat geschrieben:
Du fragst nach der Schleife, ob Abfrage==N, und dann fragst Du ob Abfrage!=J, da kann aber auch N rauskommen.


Hab ich ja noch gar nicht beantwortet ;)

Das Prog ist eine Konsolenanwendung, es arbeitet ja Schritt für Schritt... Wenn die Abfrage N ist, ist es OK, wenn es nicht N ist, und dann auch nicht !=J, dann ists ein anderer Buchstabe...

Der Fehler ist ja wirklich nur dass ich die N & J initialisiert hab, da hat mir dein Satz darüber weitergeholfen :)

_________________
Bild


Nach oben
 Profil  
 
 Betreff des Beitrags: Re: Kleine Hilfe bei Übungsprog (C++)
BeitragVerfasst: 22.07.2008, 21:36 
Offline
Moderator
Moderator
Benutzeravatar

Registriert: 26.08.2006, 21:17
Beiträge: 2066
Wohnort: Argon Titan "Sayonara"
Code:
if (Abfragre != N && Abfrage != J) {
do_amazing_stuff(cool, arguments);
more_stuff(wtf);
}

_________________
Bild
Bild


Nach oben
 Profil  
 
Werbepause ;-)
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 90 Beiträge ]   
Gehe zu Seite 1, 2, 3, 4, 5 ... 9  Nächste

Alle Zeiten sind UTC [ Sommerzeit ]


Ähnliche Beiträge


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast






Suche nach:

Gehe zu:  


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.


www.xfans.de - Spielefanpage Xfans News Xfans Fanscripte-Downloadarchiv Pagerank erhoehen

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Deutsche Übersetzung durch phpBB.de

PlayStation style by Scott Stubblefield