C++ Benutzer nach dem Namen fragen?

... komplette Frage anzeigen

4 Antworten

Nur zur Information: Eine Endlosschleife ist eine Schleife, aus der man nicht wieder rauskommt, eben endlos. Das ist ein Fehlerfall, den kein Programmierer absichtlich macht. Was Du meinst, ist eine ganz gewöhnliche Schleife, die auch eine erfüllbare Endebedingung haben muss. Wenn in der Endlodschleife keine Ein- oder Ausgabe erfolgt, erscheint der Fehler von außen betrachtet so, dass sich das Programm aufgehängt hat und nicht mehr reagiert. Schleifen sind elementarer Bestandteil jeder Programmiersprache. Es ist auf jedenfall richtig, gleich beim Einstieg sich mit der Schleifenprogrammierung auseinanderzusetzen. Denn wie Du sicher schon bemerkt hast, kommt man schon mit der einfachsten Aufgabe nicht um Schleifen herum.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von LetsGamble
26.01.2016, 13:00

Okay klar du hast recht. Habe mich echt undeutlich ausgedrückt sorry :)

0

Du solltest beim if statement denke ich if(wahl==f) verwenden. Falls ich falsch liege dann verbessert mich bitte.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von LetsGamble
25.01.2016, 12:31

stimmt du hast recht. Habe ich denn nun eine Endlosschleife, wenn der User wieder mit f bestätigt?

0
Kommentar von Hammingdon
25.01.2016, 12:32

du setzt den wert mit wahl=f immer auf f, also ja.

0

So, nach den vielen wirklich guten Hilfestellungen habe ich selber nochmal etwas rum getrickst. Ich denke das hier ist die eleganteste Lösung. Für Leute die etwas ähnliches machen wollen, werde ich meinen Ansatz hier unte dem Kommentar posten:

//Endlosschleife Namen

int main()
{
int wahl;

cout << "Bitte geben Sie ihren Namen ein:" << endl;
cin >> name >> endl,
cout << " Also ist dein Name" << name << "?" << endl;
cout << " Bestaetige mit y und lehne ab mit f " << endl;

cin << wahl;

while (true)
{

cout << " Wie heißt du den? Gib bitte deinen Namen ein. " << endl;
cin >> name
cout << " Also ist dein Name " << name << "?" << endl;
cout << " Bestaetige mit y und lehne ab mit f " << endl;
cin >> wahl;
if (wahl == y)
break;

}

cout << " Hallo " << name << " schön bekanntschaft gemacht zu haben." << endl;
cout << " Leb Wohl" << endl;
return 0;
}

Antwort bewerten Vielen Dank für Deine Bewertung

Hallo!

Benutze die while-Schleife, die Syntax in c++ weis ich nicht, aber so ähnlich:

while(wahl==f) do {...}

Für die Punkte deine Eingaben, bis wahl = t wird bleibt das Programm in der Schleife

(besser wäre die Abfrage while(wahl != y) do {...} , dann wird die Schleife erst beendet, wenn y eingegeben wurde)

Gruß

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von LetsGamble
25.01.2016, 13:41

Vielen Dank! :)

0

Was möchtest Du wissen?