Voor we kunnen starten moet je eerst enkele begrippen kennen die aan bod komen:

1. programmeertaal


Wij, (biologische) mensen, communiceren op een heel complexe manier: we gebruiken vele woorden (en cijfers) in complexe zinnen, aangevuld met onze emoties en zintuigen.
Een machine (bv: een computer) kan dat niet, want die gebruiken een binaire taal. Dit is een taal die bestaat uit 0'en en 1'en (of "elektriciteit aan" en "elektriciteit uit"). Zo heeft elke letter, cijfer en teken een unieke combinatie van 0'en en 1'en
Op deze site kan je gewone tekst omzetten in binaire taal en omgekeerd: Klik hier1

Daardoor kunnen wij niet zomaar een opdracht geven aan een computer want wij zouden alles moeten typen in die 0'en en 1'en. Wij moeten onze, complexe, taal eerst omzetten in die binaire taal.
Om de omzetting gemakkelijker te maken hebben we programmeertalen gemaakt: hierbij maken we gebruik van vaste commando's die begrepen worden.



Vele programmeertalen... wij kiezen voor Python



Je kan games maken, websites, apps voor smartphones, machines programmeren en programma's voor computers maken... Voor alles bestaan er meerdere programmeertalen met elk hun voor-en nadelen.
Wij kiezen voor de programmeertaal Python:



Python is een vrij recente programmeertaal, ontworpen om gemakkelijker te zijn dan de bestaande (en oudere) programmeertalen. Op korte tijd is Python de derdegrootste programmeertaal ter wereld geworden en wordt gebruikt door Nasa, Uber, Firefox, Netflix, Google enz... Je zal deze programmeertaal ook tegenkomen bij verdere studies (hogescholen en universiteiten).
Je kan Python gratis downloaden op deze site 2 maar hier op Dodona zit Python al ingebouwd.


2. algoritme


Een algortime is een stappenplan om een probleem op te lossen vanuit een begintoestand naar een beoogd einddoel. Hiervoor ga je stap voor stap te werk in een vaste volgorde.
Een goed voorbeeld is het volgen van een recept om te koken: als je een cake wilt bakken moet je ook een vaste volgorde van handelingen volgen om een lekkere cake te verkrijgen. Als je ergens een stap omdraait (eerst in de oven zetten en dan het ei toevoegen) zal het eindresultaat niet behaald worden.
Een computer heeft nood aan zo'n algoritmes om een taak uit te voeren. Elk programma, game, website enz... bestaat uit algoritmes dat wij het computerprogramma noemen.
Een computeralgoritme bestaat uit regels programmeertaal. Elke regel zal één voor één uitgevoerd worden. Dit noemt men "TOP DOWN" -> de computer leest de regels van boven naar beneden in en voert ze uit.




3. Variabele


Om gegevens (cijfers, woorden, symbolen etc) te kunnen gebruiken in een programma moet je deze ergens tijdelijk kunnen opslagen in het geheugen van de computer. Vergelijk dit met ons korte termijngeheugen als je een rekensom maakt.
Het tijdelijk opslagen van gegevens door een programma gebeurt met variabelen (vandaar de naam ook: de inhoud ervan "varieert").
Een voorbeeld: een programma moet de som van twee getallen maken. Die twee getallen zijn voor jou als programmeur onbekend en zullen ook altijd anders zijn. Hiervoor heb je dus twee variabelen nodig: eentje voor het ene getal en nog eentje voor het andere getal.
Hoe je een variabele gebruikt in een programma, zie je later




4. Functies en parameters


Functies zijn opdrachten die je aan de computer geeft. Parameters zijn onderdelen van een functie. Sommige functies hebben geen parameters nodig, bij andere functies is er een vast aantal parameters vereist.

5. Compiler


Een compiler is een programma dat de programmeertaal omzet in de machinetaal. In ons geval wordt Python omgezet in binaire taal.
Dit kan met het programma "IDLE" dat je bij de installatie van Python gekregen hebt. Wij gebruiken hier het online platform Dodona waar ook al een compiler in zit.
Er bestaan ook (gratis/professionele) programma's waarmee je kan programmeren: hier kan je bijvoorbeeld ook allerlei add-ons aan toevoegen die het programmeren gemakkelijker maken (vb: Visual Studio Code of PyCharm). We gaan deze in het 4e gebruiken.
Hieronder zie een voorbeeld van Visual Studio Code (die tijdens het typen suggesties doet):