C++ if en else commando

Pagina: 1
Acties:
  • 44 views sinds 30-01-2008

  • killerflappy
  • Registratie: Februari 2002
  • Laatst online: 29-08-2021
Ik begrijp niet veel van het if en else commando.
Ben echt een groentje in c++.
Probeer het onderstaande programma'tje te maken die uitrekent hoeveel vakantiedagen iemand krijgt. Het werkt echter niet.

C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
#include <stdio.h>
#include <iostream.h>
#include <conio.h>

void main() {
int dienstjaren, leeftijd, vakantiedagen, verhddienst;
cout << "Wettelijke regeling van vakantie met behoud van loon"
     << endl << endl;
cout << "Wat is de leeftijd van de chauffeur? ";
cin >> leeftijd;
cout << "Hoeveel jaar is de chauffeur in dienst? ";
cin >> dienstjaren;
    if (leeftijd <= 16) {
               vakantiedagen = 28;
    }
                if (leeftijd >= 17 && leeftijd < 19) {
    vakantiedagen = 26;
    }
    if (leeftijd >= 19 && leeftijd < 45) {
    vakantiedagen = 24;
    }
    if (leeftijd >= 45 && leeftijd < 50) {
    vakantiedagen = 25;
    }
    if (leeftijd >= 45 && leeftijd < 50) {
    vakantiedagen = 26;
    }
    if (leeftijd >= 55 && leeftijd < 60) {
    vakantiedagen = 27;
    }
    if (leeftijd >= 60) {
                vakantiedagen = 28;
    }
                                if (dienstjaren < 10 && dienstjaren >= 0) {
                                verhddienst = 24;
        }
                        if (dienstjaren >= 10 && dienstjaren < 15) {
        verhddienst = 25;
        }
        if (dienstjaren >= 15 && dienstjaren < 20) {
        verhddienst = 26;
        }
        if (dienstjaren >= 20 && dienstjaren < 25) {
        verhddienst = 27;
        }
        if (dienstjaren >= 25 && dienstjaren < 30) {
        verhddienst = 28;
        }
        if (dienstjaren >= 30) {
        verhddienst = 29;
        }
    if (vakantiedagen >= verhddienst)  {
    cout << "De chanuffeur heeft recht op " << vakantiedagen
                       << " vakantiedagen.";
}
    if (vakantiedagen <= verhddienst)  {
    cout << "De chanuffeur heeft recht op " << verhddienst 
            << " vakantiedagen door zijn dienstjaren.";
}
    else {
    cout << "Fout bij invoer";
}
getch();
}

[ Voor 12% gewijzigd door .oisyn op 07-02-2003 17:25 ]


Verwijderd

Geef even aan wat het probleem is (wat krijg je als verkeerde uitkomst)en kijk een naar de waarde van de variabele verhddienst.

Sorrie het is ook zo onoverzichtelijk geprogrameerd.

MisterrData een switch is hier niet van toepassing omdat het hier om deelgebieden gaat en niet om doe iets bij een bepaalde waarde en doe iets ander bij een andere waarde, if else goedcombineren is toch de oplossing , maar dan beter dan hier.

[ Voor 61% gewijzigd door Verwijderd op 07-02-2003 17:28 ]


  • MisterData
  • Registratie: September 2001
  • Laatst online: 24-08 09:53
Ik raad je in dit geval aan een switch te gebruiken. Kijk op www.cplusplus.com daarvoor :)

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 21:34

.oisyn

Moderator Devschuur®

Demotivational Speaker

even codetags eromheen gezet :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • whoami
  • Registratie: December 2000
  • Laatst online: 16:37
Hmmm....

Dit topic lijkt gewoon wel een beetje op 'ik post hier m'n code, en jullie fixen het wel voor me'.

Geef eens aan wat er niet werkt, waarom je dnekt dat het niet werkt, wat het doet of wat het juist niet doet, welke fouten je krijgt, etc....

Kortom, lees ff de P&W Quickstart en geef de nodige informatie.

https://fgheysels.github.io/


  • Soultaker
  • Registratie: September 2000
  • Laatst online: 23:08
Kan je lezen? Begin dan eens hier. En voor het geval je ook niet kan klikken:
Hoe stel ik een vraag?
1. Geef eerst globaal aan wat het probleem is
2. Geef dan aan wat je al geprobeerd hebt
3. Geef vervolgens aan waar je denkt dat het aan ligt
4. Geef dan aan wat je geprobeerd hebt om dit probleem te verhelpen
5. Geef aan waarom je denkt dat dat niet klopt, of geef aan waarom je denkt dat dat niet werkt. Herhaal deze stappen totdat je alles hebt verteld wat je hebt geprobeert, en welke references je daarvoor gebruikt hebt. Geef ons de errors die je te zien krijgt.
6. Wanneer je alles duidelijk hebt uitgelegd, vat je je probleem samen en stel je de uiteindelijke vraag.
7. Vergeet ook de [code] tags of de [php] tags niet. Zie hiervoor Voor iedereen die code in z'n post plaatst!.
"Het werkt niet" is GEEN probleemomschrijving!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 21:34

.oisyn

Moderator Devschuur®

Demotivational Speaker

ik zie trouwens niet echt een probleem in je code. Wat werkt er precies niet?

MisterData schreef op 07 February 2003 @ 17:24:
Ik raad je in dit geval aan een switch te gebruiken. Kijk op www.cplusplus.com daarvoor :)


aan een switch heb je helemaal niets in dit geval, aangezien je met bereiken werkt, niet met specifieke gevallen

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • Freee!!
  • Registratie: December 2002
  • Laatst online: 24-08 12:10

Freee!!

Trotse papa van Toon en Len!

Ik zie in ieder geval een dubbele output als aantal vakantiedagen op basis van leeftijd gelijk is aan het aantal vakantiedagen op basis van dienstverband.

The problem with common sense is that sense never ain't common - From the notebooks of Lazarus Long

GoT voor Behoud der Nederlandschen Taal [GvBdNT


  • .oisyn
  • Registratie: September 2000
  • Laatst online: 21:34

.oisyn

Moderator Devschuur®

Demotivational Speaker

mja, ik gooi deze ook dicht
Heb hier tenslotte ook een slotje aan gehangen (vergelijkbaar topic, evenveel info), en ik kan niet met 2 maten gaan meten

Dus neem de punten van Soultaker even door

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.

Pagina: 1

Dit topic is gesloten.