Voorwaardes

Home / Programmeren / Cplusplus / Voorwaardes

Dan gaan we nu verder met de voorwaardes. In elke programmeertaal is het nodig om beslissingen te nemen aan de hand van variabelen. Als je al bekend bent met een andere programmeertaal moet dit in C++ geen probleem opleveren, heel veel moeilijker is het niet.

IF

Met de if()-constructie kun je zo'n beslissing laten nemen. Hieronder zie je een simpel voorbeeld van hoe dat in zijn werk gaat.

#include <iostream>
using namespace std;

int main()
{ int eengetal = 8;
if (eengetal > 4) { cout << "eengetal is groter dan 4!" << endl; }
return 0;
}

  1. De eerste regels bevatten de include's, namespace en de start van de functie main
  2. Daarna wordt de variabele eengetal gemaakt, waarin de waarde 8 wordt gestopt
  3. Dan komen we aan bij de voorwaarde. Het sleutelwoord if geeft aan dat het hier om een voorwaarde gaat. Tussen de haken staat de voorwaarde, waarin gekeken wordt of eengetal groter is dan 4. Daarachter geeft de accolade (het {-teken) aan dat alles tot de sluitaccolade (het }-teken) bij deze if hoort
  4. cout zet iets op het scherm, maar door de if gebeurt dat alleen als eengetal groter is dan 4
  5. De sluitaccolade (het }-teken) geeft aan dat het if-blok hier eindigt.
  6. return 0; sluit het programma af

Mocht je het >-teken niet kennen, lees dan de paragraaf booleaanse logica in de beginnerstutorial door. Daar kun je trouwens ook een overzicht van alle tekens voor booleaanse logica in C++, zoals <, >, == en !=.

IF-ELSE

Vaak is het handig om ook iets te laten gebeuren als de voorwaarde niet waar is. Daarvoor is er else. Ook hier weer een voorbeeld:

#include <iostream>
using namespace std;

int main()
{ int eengetal = 3;
if (eengetal > 4) { cout << "eengetal is groter dan 4!" << endl; } else { cout << "eengetal is niet groter dan 4!" << endl; }
return 0;
}

Uiteraard doet dit programma altijd hetzelfde, maar je kunt je voorstellen wat je ermee kunt doen als eengetal door de gebruiker wordt ingevoerd of uit een bestand kan worden gelezen. Ook dat gaan we eens proberen! We kunnen met cin een getal aan de gebruiker vragen, en er iets mee doen.

#include <iostream>
using namespace std;

int main()
{ int eengetal;
cin >> eengetal;
cout << "wat je invoerde";
if (eengetal > 4) { cout << " is groter dan 4!" << endl; } else { cout << " is niet groter dan 4!" << endl; }
return 0;
}

IF-ELSE IF-ELSE

Bij het vorige voorbeeld was er sprake van een dit-of-dat situatie, er zijn 2 mogelijkheden. Soms zijn er meer mogelijkheden. In dat geval kun je if's en else's met elkaar combineren. Zie het onderstaande voorbeeld.

#include <iostream>
using namespace std;

int main()
{ int eengetal;
cin >> eengetal;
cout << "wat je invoerde";
if (eengetal == 4) { cout << " is 4!" << endl; } else if(eengetal < 4) { cout << " is kleiner dan 4!" << endl; } else {
cout << " is groter dan 4!" << endl; }
return 0;
}

Zoals je ziet kun je zo meerdere if's achter elkaar zetten. Je kunt natuurlijk gewoon meerdere if's ahter elkaar zetten, maar dit is sneller omdat de computer alle andere voorwaardes overslaat als de eerste waar is. Je kunt zo een hele ladder maken van if's.