> For the complete documentation index, see [llms.txt](https://girls.gitbook.io/c++-cursus/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://girls.gitbook.io/c++-cursus/workshops/startactiviteit-puzzelen-met-programmeren.md).

# Startactiviteit: Puzzelen met programmeren

In deze startactiviteit krijg je een korte inleiding op programmeren zoals we trainen bij de EGOI-trainingen. Vind je het leuk, dan kun je zelf verder werken met ons [lesmateriaal](https://girls.gitbook.io/c++-cursus) of [deelnemen aan onze cursus](https://docs.google.com/forms/d/e/1FAIpQLSfuHpQAI3VHwNxXhidyIdaktSj3SgYxGZk0Lwz_SH75LJVd1w/viewform).

## Deel 1: Puzzelen <a href="#docs-internal-guid-c210c473-7fff-db63-741d-98ca4dbbc942" id="docs-internal-guid-c210c473-7fff-db63-741d-98ca4dbbc942"></a>

Om te beginnen ga je een kleine puzzel oplossen, deze is afkomstig uit de [Beverwedstrijd](https://www.beverwedstrijd.nl/)

**Opdracht 1: een puzzel oplossen**

[Klik hier om de opdracht te maken](https://informatica.cuttle.org/?action=question_standalone\&que_id=249\&t=44a1496453dbbc3a)

Ging het oplossen van deze puzzel goed? Deze puzzel is nog best goed op te lossen zonder hulpmiddelen zoals een kladblaadje of een rekenmachine. Maar puzzels kunnen ook veel complexer worden, bijvoorbeeld als de rij met moeren en bouten bestaat uit een miljoen items. Dan is het moeilijk met de hand bij te houden. In zo’n geval kan programmeren je helpen om de puzzel op te lossen.

Als je gaat programmeren schrijf je in computertaal een programma met verschillende stappen om een probleem op te lossen. Zo’n stappenplan noemen we een algoritme. Het kan nog best lastig zijn om een goed algoritme te schrijven, kijk maar eens naar dit [filmpje](https://www.youtube.com/watch?v=FN2RM-CHkuI)!

Je gaat nu een puzzel oplossen door te programmeren. Niet schrikken, wij hebben het meeste programmeerwerk al gedaan!

**Opdracht 2: een puzzel oplossen met programmeren**

Hieronder zie je de plattegrond van een dierentuin

<figure><img src="/files/V50CLiHGndmCkbTGPN4E" alt="" width="375"><figcaption></figcaption></figure>

Je wilt weten of de volgende uitspraken waar zijn of niet:

* Als eerste kwam de bezoeker een olifant tegen
* Als derde kwam de bezoeker een aap tegen
* Als laatste kwam de bezoeker een muis tegen

Om je te helpen bij de antwoorden, besluit je een programma te programmeren in C++. Zie het voorbeeld hieronder:

```cpp
// Some code#include <iostream>
#include <vector>
#include <string>

using namespace std;

int main() {
    vector<string> dierentuin = {
        "ingang",
        "olifant",
        "kangoeroe",
        "beer",
        "aap",
        "kat"
    };

    cout << "Het eerste dier dat de bezoeker zag was een:" << endl;
    cout << dierentuin[1] << endl;

    cout << "Het derde dier dat de bezoeker tegenkwam was een:" << endl;
    cout << dierentuin[3] << endl;

    cout << "De bezoeker zag als laatste een:" << endl;
    cout << dierentuin[5] << endl;

    return 0;
}

```

Je gaat nu op bezoek bij een andere dierentuin, zie onderstaande plattegrond.

<figure><img src="/files/C8OPLBqZjX2DHWjxjq7v" alt="" width="375"><figcaption></figcaption></figure>

Je gaat nu je eigen programma schrijven om te kijken of de volgende uitspraken waar zijn:

* Het dier dat je als 3e tegenkomt is een schildpad
* Het laatste dier is een aap
* Net na de ingang zie je als eerste dier een leeuw

Om je programma te maken moet je de volgende stappen uitvoeren:

1. Ga naar <https://www.onlineide.pro/playground/c++> om makkelijk C++ te kunnen programmeren.&#x20;
2. Kopieer de code uit het voorbeeld hierboven naar de online editor.
3. Aan het begin van de code zie je alle dieren uit de dierentuin staan op volgorde. Pas deze lijst aan zodat je de plattegrond van deze opdracht gebruikt
4. Daaronder zie je regels met `cout` deze regels worden weergegeven als je het programma uitvoert. Pas deze regels aan zodat je de juiste uitspraken kan testen&#x20;
5. Om je code te runnen klik je op de groene knop 'run'

Je hebt je eerste puzzel opgelost met behulp van programmeren! Gefeliciteerd!

## Deel 2: Programmeren <a href="#docs-internal-guid-98bae779-7fff-272b-4686-6e6b16d1993d" id="docs-internal-guid-98bae779-7fff-272b-4686-6e6b16d1993d"></a>

Vaak leer je programmeren om bijvoorbeeld games te maken of een website te bouwen. BIj onze cursus leer je programmeren om puzzels op te lossen.

In onze cursus leren we je programmeren in C++. Dat is de taal waar je net ook al mee hebt gewerkt. Om hier alvast kennis mee te maken ga je het [eerste hoofdstuk uit ons lesmateriaal](https://girls.gitbook.io/c++-cursus/leer-de-basis-van-programmeren/1.-programmeren-hoe-te-beginnen) doorlopen.
