Archief - [PROG]C++ Eerste prog

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Rbn_3

Legacy Member
Dit is mijn allereerste programma dat ik gemaakt heb en ben momenteel ng een beetje aan het uittesten. Nu waar zit hier de fout ? Want als ik intyp op de vraag dan sluit opdrachtprompt gewoon af. Hmm ? ::

Code:
#include <iostream.h>
#include <stdio.h>
int main()
{
  int Antwoord;
  int Computers;
  cout << "Hoeveel computers heb je? ";
  cin >> Computers;
  switch (Computers)
    {
    case 0:
      cout << "geen?";
      break;
    case 1:
      cout << "één?";
      break;
    case 2:
      cout << "twee?";
      break;
    case 3:
      cout << "drie?";
      break;
    default:
      cout << "meer dan drie?";
    }
  cout << "\nDruk op Enter om door te gaan ..." << endl;
  getchar();
  return 0;
}

PS : let niet op de antwoorden, het is gewoon om achteraf te zien of hij het juiste weergeeft.

Daedie

Legacy Member
kweet niet als het de oorzaak is van uw probleem. Maar zet es de lijn:
using namespace std;

boven uw main. (of std:: voor elke cout/cin/endl)

ArnoDF

Legacy Member
probeer het programma uit te voeren vanuit de opdracht promp en niet door der op te klikken ofzo. Dan blijft ge sowieso in de console en kunt ge output zien (zoals fouten enz)

probeer mss ook eens cin.getchar() te gebruiken.
heeft mij al geholpen

forloRn_

Legacy Member
Je moet trouwens <iostream> includen in plaats van <iostream.h> en <stdio.h>.

cG`

Legacy Member
zet boven getchar(); dit:
fflush(stdin);

Hierdoor wordt de inputstream gewist. Je vraagt aan de gebruiker een geheel getal (int), maar eigenlijk geeft de gebruiker getal + ENTER in, die enter blijft in de inputstream staan en als je dan getchar(); doet dan wordt de '\n' uit de inputstream gehaald. Daarom moet je dus eerst "fflush(stdin);" doen zodat de inputstream volledig leeg is (zo kan getchar() niet meteen iets uit de inputstream halen en moet 'hij' dus wachten op input van de gebruiker).

Daedie

Legacy Member
cG` zei:
zet boven getchar(); dit:
fflush(stdin);

Hierdoor wordt de inputstream gewist. Je vraagt aan de gebruiker een geheel getal (int), maar eigenlijk geeft de gebruiker getal + ENTER in, die enter blijft in de inputstream staan en als je dan getchar(); doet dan wordt de '\n' uit de inputstream gehaald. Daarom moet je dus eerst "fflush(stdin);" doen zodat de inputstream volledig leeg is (zo kan getchar() niet meteen iets uit de inputstream halen en moet 'hij' dus wachten op input van de gebruiker).

Deze wist ik nog niet :). Goed om te weten ^^.

Rbn_3

Legacy Member
cG` zei:
zet boven getchar(); dit:
fflush(stdin);

Hierdoor wordt de inputstream gewist. Je vraagt aan de gebruiker een geheel getal (int), maar eigenlijk geeft de gebruiker getal + ENTER in, die enter blijft in de inputstream staan en als je dan getchar(); doet dan wordt de '\n' uit de inputstream gehaald. Daarom moet je dus eerst "fflush(stdin);" doen zodat de inputstream volledig leeg is (zo kan getchar() niet meteen iets uit de inputstream halen en moet 'hij' dus wachten op input van de gebruiker).

Thx thx !! :bow: Hij doet het nu.
Ook bedankt voor de andere replies.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan