Programm Beenden

Jonas Meyer

Mitglied
Hallo,
Ich bin heute Angefangen mit C++ und habe ein Problem bzw. suche etwas.

Code:
#include "stdafx.h"
#include <iostream>


double Rechnen(int wahl, double zahl1, double zahl2);

int main()
{
	int wahl;
	double ergebnis, zahl1, zahl2;

	std::cout << "Wählen sie eine Rechenmothode aus: \n" << std::endl
		      << "(1)Addieren\n" << "(2)Subdrahieren\n" << "(3)Multi\n" << "(4)Divi\n";
	std::cin >> wahl;
	std::cout << "\n\n";
	std::cout << "\n\n";



	std::cout << "\Gebe Zahl 1 ein: ";
	std::cin >> zahl1;
	std::cout << "\Gebe Zahl 2 ein: ";
	std::cin >> zahl2;
	std::cout << "\n\n";
	std::cout << "\n\n";

	ergebnis = Rechnen(wahl, zahl1, zahl2);

	std::cout << "Das Ergebnis ist: " << ergebnis << std::endl;

	std::cin.ignore();
	std::cin.get();
	return 0;
}

double Rechnen(int wahl, double zahl1, double zahl2)
{
	double ergebnis;

	if ( wahl == 1)
	{
		ergebnis = zahl1 + zahl2;
	}
	 else if ( wahl == 2)
	{
		ergebnis = zahl1 - zahl2;
	}


	 else if ( wahl == 3)
	{
		ergebnis = zahl1 * zahl2;
	}

	else if ( wahl == 4)
	{
		ergebnis = zahl1 / zahl2;
	}
	else
	{
		std::cout << "Falsche Eingabe!\n";
		
	}

	


	return ergebnis;


}



Möchte ich es so haben das ich eine Rechen Methode wähle die nicht 1-4 ist kommt falsche Eingabe und wenn ich enter drück schließst sich das Programm und fragt nicht noch nach Zahl1 und Zahl2.
Schreibt mir jemand den Code um****?
Oder sagt mir eine Möglichkeit****?

mfG Jonas
 
Schreibt mir jemand den Code um****?
Nein, das ist ein Hilfe-Forum und kein "Wer kann mir was programmieren" Forum.

Oder sagt mir eine Möglichkeit****
Das jederzeit:
Wie ich das verstanden hab möchtest du das dein Programm nicht nach Zahlen fragt wenn eine ungültige Rechenart gewählt wurde:
Dann musst du zwischen den Zeilen 14 und 15 überprüfen ob "wahl" zwischen 1 und 4 liegt, wenn nicht dann gleich beenden, sonst nach Zahlen fragen:
Code:
wenn (zahl < 1 || zahl > 4)
   //Fehlermeldung
sonst
{
  //Zeile 15-32
}
 
Zuletzt bearbeitet:
Hoppla, da war wohl die Hand schneller als der Kopf. Es muss natürlich zahl < 1 || zahl > 4 heißen. Ich habs oben ausgebessert.
 
Zuletzt bearbeitet:
Ja in diesen Fall aber wenn ich mehrerer Zeilen hab und mehrere solcher Abbruch schleifen oder wie man so was nennen soll ist das ganz schnell unverständlich und unübersichtlich.
 
Zuletzt bearbeitet:
Naja, man kann stattdessen folgendes verwenden (statt dem von mir oben geposteten Code)

C++:
if (zahl < 1 || zahl > 4)
{
  //Fehlermeldung
  return 1;
}

Raten würde ich aber keinem dazu, da der Code für jemanden anderen dadurch schwer nachvollziehbar wird.
 
Zuletzt bearbeitet von einem Moderator:
Zurück