# Programmeren, de basis/Pseudocode
## Pseudocode

Bij het schrijven van programma's zijn computers heel streng: als iets verkeerd “gespeld” wordt zal de computer niet begrijpen wat je bedoelt. Bij het ontwerpen van een programma is zoiets niet interessant, want je verliest jezelf in details. Dan gebruiken we pseudocode die bedoeld is om door mensen makkelijk begrepen te worden (moedertaal) en niet zozeer door computer (programmeertaal). Wat er staat zal in dit geval syntactisch niet correct zijn, maar het is wel al een verdere stap om te komen tot het eigenlijke programmeren, nl. de implementatie.
Voorbeeld pseudocode:
Voorbeeld pseudocode, die al meer lijkt op de programmacode:
Voorbeeld programmacode in VBA, die echter syntactisch niet correct is en dus niet zal werken:
Voorbeeld programmacode in VBA, die wel zal werken:
Hoe beter je een programmeertaal kent, hoe meer je pseudocode zal lijken op de uiteindelijke programmacode en implementatie.

## Commentaar

Een van de belangrijkste dingen bij het programmeren, is commentaar. Commentaar wordt gebruikt om aan te geven wat een stuk code doet en maakt je code stukken duidelijker. Het lijkt alsof dat alleen maar tijd en energie kost. Als je echter na een tijdje jouw code opnieuw bekijkt of als iemand anders jouw code moet bekijken, dan kan die commentaar een heel welgekomen hulp zijn (zeker bij duizenden lijnen code).
Vb. in VBA: ‘vervolgens de berekening van het totale bedrag, incl. BTW:
Vb. in PHP: //vervolgens de berekening van het totale bedrag, incl. BTW:

## Bewerkingen, uitdrukkingen en operatoren
### Toekenningsoperator

Met de toepassingsoperator (vaak voorgesteld door het gelijkheidsteken =) kan je
* (nieuwe) waarden toekennen aan variabelen;
* (nieuwe) waarden toekennen aan objecteigenschappen;

### Rekenkundige operatoren

De eerste belangrijke uitdrukkingen zijn de rekenkundige operatoren: hoe kan je getallen (of de variabelen waar ze in zitten opgeslagen) optellen, aftrekken, delen of vermenigvuldigen? In heel wat programmeertalen wordt dit gedaan met respectievelijk +, -, / en *.

### Relationele operatoren

Met de relationele operatoren kan je relaties tussen waarden of variabelen testen en als uitkomst geven ze steeds 'waar' of 'onwaar'. Zo heb je groter dan (>), groter dan of gelijk aan (>=), kleiner dan (<) en kleiner dan of gelijk aan (<=).
Andere belangrijke relationele operators zijn gelijk aan en niet gelijk aan, maar de syntax kan per taal anders zijn. Zo wordt in VBA gebruik gemaakt van respectievelijk = en <> en in PHP en Java van == en !=.

### Logische operatoren

Soms moeten meerdere voorwaarden voldaan zijn: dat kan door het werken met 'en' of met 'of': in heel wat talen wordt dat voorgesteld door 'and' en 'or'. Ook belangrijk is het 'tegenovergestelde' van een voorwaarde verkrijgen, wat je Java met ! doet en VBA met Not.

### Samenvoegen van tekst

Vaak gebeurt het dat je twee of meerdere stukken tekst moet samenvoegen (concatenatie). Het lijkt logisch om daarvoor een plusteken (+) te gebruiken, maar in de meeste programmeertalen wordt hiervoor een &-teken gebruikt.

## Functies

Diegene die vertrouwd zijn met een rekenblad (bv. in Excel of Calc) kennen al het gebruik van functies. Zo kunnen we de som nemen van een bepaald bereik van cellen of het gemiddelde, of het maximum of ...
Bij het programmeren bestaan er ook ingebouwde functies die ons helpen bij het werken met gegevens. Zo’n functie wordt net als bij een rekenblad opgeroepen door het opgeven van zijn naam en nul, één of meerdere argumenten. Vaak worden deze argumenten meegegeven tussen haakjes. In de meeste programmeertalen heb je volgende soorten van functies:
* tekstfuncties (deel van een tekst, alles naar hoofdletters,...)
* datumfuncties (datum van vandaag, de maand uit een datum halen,...)
* wiskundige functies (vierkantswortel, sinus,...).
Vb. tekstfunctie in Excel of Calc: inhoud cel A1 =Deel("President J.F. Kennedy";11;4) => cel A1 bevat "J.F."
Vb. tekstfunctie in VBA: strInitialen = Mid(“President J.F. Kennedy”, 11, 4) => strInitialen bevat “J.F.”
Vb. tekstfunctie in PHP: initalen = substr(“President J.F. Kennedy”, 10, 4) => initalen bevat “J.F.”