Prgramm in ein Funktion packen.

moin


So mein ich das:
Code:
int main()
{
	//Auswahl!
	char zeichen; 

	cout <<"\nDruecken Sie 'V', wenn Sie den Verbrauch ausrechnen moechten";
	cout <<"\nDruecken Sie 'S', wenn Sie ausrechnen moechten wie weit das Auto noch kommt";
	cout <<"\n\nWas moechten Sie ausfuehren ?:\t ";
	cin >> zeichen;
	switch(zeichen)
	{
	case 'V':
	case 'v':
		programmV();
		break;

	case 'S':
	case 's':
		programmS();
		break;
	}

	return 0;
}


mfg
umbrasaxum
 
Das klappt net, bzw. was soll das dann bewirken, so wie ich das fertige Prog zum Schluss gepostet habe, funktioniert das.

Aber was villeicht noch schön zu wissen wäre,

wie mach ich das denn jetzt, das sich das ganze wiederholt bzw. in eine schleife gesetzt wird?

Also ich hab schon ein "do" und eine "while" schleife verwendet, hat aber irgendwie nich geklappt.

Das ganze sollten dann noch mit einer Abfrage gemacht werden.
so in etwa

"Möchten sie weiter arbeiten? (J / N)"
Wenn 'J' gedrückt dann wiederhole das Programm, wenn 'N' gedrückt verlasse das Programm.

Hat da einer von euch eine idee wie man das realieseren könnte ?
Oder auf welche schleife ich da zurückgreifen soll ?
 
Das was daran nicht funktioniert ist, das wenn das Programm einmal durchgelaufen ist die Abfrage nicht erscheint, sondern da steht dann sofort nach einem druchlauf "Press any key to continue", sprich das Programm ist zuende
 
moin


Ich hab auch nie gesagt das das irgenwas nmmit einer Wiederholung zu tun hat.
Code:
int main()
{
	//Auswahl!
	char zeichen; 
	char weiter;

	while(1)
	{
		cout <<"\nDruecken Sie 'V', wenn Sie den Verbrauch ausrechnen moechten";
		cout <<"\nDruecken Sie 'S', wenn Sie ausrechnen moechten wie weit das Auto noch kommt";
		cout <<"\n\nWas moechten Sie ausfuehren ?:\t ";
		cin >> zeichen;
		switch(zeichen)
		{
		case 'V':
		case 'v':
			programmV();
			break;

		case 'S':
		case 's':
			programmS();
			break;
		}

		cout<<"Zum beenden q drücken, andere Taste für eine wiederholung";
		cin<< weiter;

		if(weiter == 'q' || weiter == 'Q')
			break;
	}

	return 0;
}


mfg
umbrasaxum
 
Hast du ja auch nicht, aber ich hätte das gerne in einer schleife, wo das Programm einmal durchläuft, sprich Fußgesteuerte schleife, dann ein die Abfrage kommt und dann das Programm jenachdem ob J oder N gedrückt wurde reagiert.
 
Ja, das ist richtig, aber das klappt irgenwie nicht. wenn ich das so mache, wie du das gepostet hast, dann führe ich das Programm aus und dann wiederholt sich in der Console ständig der Satz:

"Druecken Sie 'V', wenn Sie den Verbrauch ausrechnen moechten"

entweder stimmt das was nicht mit deinem code oder ich hab das was falsch gemacht.
 
moin


Bei cin<< weiter; müssen die Pfeile natürlich andersrum, mein Fehler.
Zur sicherheit könntest du vor cin>> weiter; noch fflush(stdin); schreiben.


mfg
umbrasaxum
 
Zurück