C++ if kleiner als größer als?

2 Antworten

#include <iostream>

using namespace std;

int main();

{

int a;

int b;

a = 5;

cout << "Bitte Zahl eingeben.\n";

cin >> b;

if(b < a)

{

cout << "Die eingegebene Zahl ist kleiner als " << b << ".\n";

}

else

{

cout << "Die eingegebene Zahl ist größer als " << b << ".\n";
}

return 0;

Abholzer  01.09.2016, 00:36

cin beudeutet Eingabe, das Programm wartet auf eine Eingabe, cout ist eine Ausgabe.

Mit cin >> b wird die eingegebene Zahl in die Variable "b" geschrieben.

mit if(b<a) wird überprüft ob b kleiner als a ist und falls dies der fall ist wird die Anweisung in den geschweiften Klammern ausgeführt {}.

das \n ist ein Absatz, damit der Computer nicht alles in eine Zeile schreibt sondern quasi einmal enter drückt.

ist die Bedingung b ist kleiner als a NICHT erfüllt, wird die else Anweisung durchgeführt wieder unter else in den geschweiften Klammern.

Allerdings in diesem Fall auch für genau 5.

das bedeutet gibt man z.b 4 ein, ist 4 kleiner als 5 und die erste Anweisung wird ausgeführt.

gebe ich 6 ein wird die Else Anweisung ausgeführt.

Gebe ich aber 5 ein, wird auch die else Anweisung ausgeführt, weil 5 nicht kleiner als 5 ist.

Möchte man das unterbinden kann man definieren das bei 5 was anderes passieren soll: (if b == 5) { Anweisung };

oder man schreibt kleiner gleich: if (b <=5) {Anweisung};

Dann ist die Bedingung Wahr solange b kleiner ODER gleich 5 ist.

So verständlich?

lg 

0

www.stackoverflow.com ist das Forum hierfür.

Zu deiner Frage:

string input;

std::getline(std::cin, input);

if (std::stoi(input) > a) {

//mache was

} else {

//mache was falls falsch

}

DerAufraeumer  01.09.2016, 00:34

am best noch try and catch mit (std::invalid_argument e) drum.

0