# 2. Integer

### Integer / float

Zoals je gezien hebt in hoofdstuk 1 kun je variabelen gebruiken om gegevens op te slaan. Deze opgeslagen gegevens kan je dan weer in je code gebruiken. \
Elke variabele in C++ heeft een datatype, het datatype geeft aan wat voor soort gegevens je kan opslaan in de variabelen. \
In dit hoofstuk leer je de datatypes integer en float, de datatypes worden gebruikt voor getallen.

| Datatype                     |                                      |
| ---------------------------- | ------------------------------------ |
| int (afkorting voor integer) | Gehele getallen                      |
| float                        | Getallen met cijfers achter de komma |

Getallen kun je bewerken met rekenkundige operatoren zoals:

* optellen (+)
* aftrekken (-)
* vermenigvuldigen (\*)
* delen (/)
* Ook handig is de modulo (%), dit geeft de rest van de deling van 2 integer getallen. Bijvoorbeeld 10 % 3 = 1, omdat 9 het grootste getal onder 10 is en deelbaar is door 3, en 10 - 9 = 1.

**Opdracht 2.1** \
In het café om de hoek staat op het menu:\
🍩 = 3 euro\
☕ = 2,50 euro\
Schrijf een programma dat de gebruiker vraagt hoeveel donuts en hoeveel koffies iemand wil en bereken het totaalbedrag.

**Opdracht 2.2** \
Je gaat een rondje rennen en gebruikt een stopwatch die alleen seconden weergeeft om je tijd te meten.\
Schrijf een programma dat vraagt om het aantal seconden op de stopwatch en reken dit om naar het aantal uren, minuten en seconden.\
Bijvoorbeeld: 8135 seconden is 2 uur, 15 minuten en 35 seconden.

{% hint style="info" %}
Als je een integer deelt door een integer dan is de uitkomst altijd een integer. \
Wil je dat de uitkomst een float is dan moet je in de deling ook een float gebruiken.\
Bijvoorbeeld:\
10 / 4 = 2\
10 / 4.0 = 2.5 (je kan ook 4. ipv 4.0 gebruiken)&#x20;
{% endhint %}

### Opdrachten inleveren&#x20;

Als je meedoet met een programmeerwedstrijd dan wordt je code automatisch nagekeken. Je code wordt getest met verschillende testcases. Belangrijk is dan dat je invoer en uitvoer precies voldoet aan wat er verwacht wordt. In de volgende opdracht gaan we code inleveren zodat deze automatisch nagekeken wordt.

**Opdracht 2.3**\
De eerste opgave die we gaan inleveren is de code van opgave 2.2, waarin je het aantal seconden hebt omgerekend naar uren, minuten en seconden.\
**Invoer:**\
Lees een regel in met daarop een positief geheel getal, dit is het aantal seconden.\
**Uitvoer:**\
Schrijf drie regels:\
\- Op de eerste regel het aantal uren.\
\- Op de tweede regel het aantal minuten.\
\- Op de derde regel het aantal seconden.\
Voorbeeld invoer:\
8135\
Voorbeeld Uitvoer:\
2\
15\
35

* Pas je code uit opdracht 2.2 aan zodat de invoer (`cin`) en uitvoer (`cout`) precies voldoen aan bovenstaande beschrijving. Zorg ervoor dat je **GEEN** cout hebt die de gebruiker om invoer vraagt zoals: `cout << "Hoeveel seconden?";`. In dit geval wordt je programma namelijk fout gerekend omdat er alleen 3 regels met cijfers wordt verwacht.
* Open de link[ opdracht Stopwatch](https://informatica.cuttle.org/?action=question_standalone\&que_id=204\&t=43eab41768bc7d2d)
* Kies de compiler: <img src="https://155810540-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fag1wUPh8M2n58lYXKcOY%2Fuploads%2FqEbrgJeGaSsfvD5GjSEw%2Fimage.png?alt=media&#x26;token=38660144-4ced-4041-925b-7ad6155a9aa8" alt="" data-size="line">
* Kopieer je code naar het tekstvak
* Klik op de knop <img src="https://155810540-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fag1wUPh8M2n58lYXKcOY%2Fuploads%2FzGRebwvnfCP2wwgo5DvN%2Fimage.png?alt=media&#x26;token=47f6ec2f-fdc7-41bf-a3d2-9b7be9e24f27" alt="" data-size="line">
* Je moet nu even wachten terwijl je code wordt nagekeken
* Als je op results klikt zie je hoe goed je code het gedaan heeft:

<div align="center"><figure><img src="https://155810540-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fag1wUPh8M2n58lYXKcOY%2Fuploads%2FudbySS0n8Rtqbsv90tho%2Fimage.png?alt=media&#x26;token=b4a2bdff-926d-4a5c-8ff1-6da905f08791" alt="" width="375"><figcaption></figcaption></figure></div>

* Als je nog een testcase fout hebt, pas je code dan aan totdat je alles goed hebt. Denk goed na welke mogelijke testcases je nog gemist hebt.&#x20;

We gebruiken de software cuttle om de opdrachten in te leveren. Het is mogelijk om een inlog te krijgen voor cuttle dan wordt je code bewaard en kan je zien welke opgaves je al af hebt. \
De website is: [https://informatica.cuttle.org/](https://informatica.cuttle.org/)\
Email girls@informaticaolympiade.nl om een inlognaam aan te vragen.
