← C#/De eerste bouwstenen
Les 2 van 3
MODULE 01 · 02◷ 16 min

Geef je waarden een naam

Na deze les kun je
  • Een berekening met variabelen maken
  • Een afgeleide waarde gebruiken

Je bereidt kaartjes voor een buurtmaaltijd voor. Het aantal tafels en het aantal plaatsen per tafel bepalen hoeveel kaartjes nodig zijn. Door deze gegevens een naam te geven, kun je zien wat een berekening betekent en de uitkomst voor meerdere berichten gebruiken.

Een getal onder een naam bewaren

Een variabele bewaart een waarde onder een naam. int tables = 5; maakt de variabele tables met de beginwaarde vijf. Een nieuwe variabele maken heet declareren.

Het type vertelt welke soort waarde de variabele kan bewaren. int is hier het type voor gehele getallen, dus getallen zonder breukdeel. Je schrijft achtereenvolgens het type, de naam, het teken = en de beginwaarde.

Dat teken = betekent in deze instructie toekennen: de waarde rechts wordt bewaard bij de naam links. De puntkomma sluit de instructie af. Je kunt de naam daarna gebruiken op een plek waar C# een waarde nodig heeft.

Het type laten afleiden

Binnen deze code mag je ook var tables = 5; schrijven. Met var vraag je de compiler het type uit de beginwaarde af te leiden. Bij dit gewone gehele getal komt hij uit op int.

Dat betekent niet dat de variabele daarna elk type mag krijgen. Een met deze beginwaarde afgeleid int blijft een int. In de oefening schrijven we het type expliciet, zodat de drie onderdelen type, naam en waarde goed herkenbaar zijn.

Vermenigvuldigen en een uitkomst hergebruiken

Een operator is een teken voor een bewerking. * vermenigvuldigt, + telt op en - trekt af. In int places = tables * perTable; rekent C# eerst met de huidige waarden rechts en bewaart het product in places.

Het voorbeeld toont eerst het aantal plaatsen en daarna hoeveel kaartjes nodig zijn met twee reservekaartjes erbij. Voorspel beide aantallen voordat je het uitvoert.

Kaartjes voor alle plaatsen
using System;

var tables = 5;
int perTable = 4;
int places = tables * perTable;
Console.WriteLine(places);
Console.WriteLine(places + 2);
Console.WriteLine(places);
Verwachte uitvoer
20
22
20
Naam of berekeningWaarde in het voorbeeld
tables5
perTable4
places20
places + 222

Bij Console.WriteLine(places + 2); wordt de berekening uitgevoerd en de uitkomst getoond. De variabele places blijft twintig bevatten. Een extra uitvoerregel met alleen die naam laat dat zien.

Een bestaande variabele veranderen kan met bijvoorbeeld tables = 6;. Schrijf het type dan niet opnieuw. Een eerder berekend places verandert daardoor niet vanzelf; als je een nieuwe tussenuitkomst nodig hebt, bereken en bewaar je die opnieuw.

Veelgemaakte fout: optellen waar je groepjes telt

Het aantal plaatsen is het aantal tafels keer de plaatsen per tafel. In deze foutvariant staat een plus waar een vermenigvuldiging hoort. De code kan worden uitgevoerd, maar beantwoordt een andere rekensom.

Veelgemaakte fout
using System;

int tables = 5;
int perTable = 4;
int places = tables + perTable;
Console.WriteLine(places);
Verwachte uitvoer
9

Vijf plus vier geeft negen, terwijl vijf groepjes van vier twintig opleveren. Een compiler kan niet raden welke situatie jij bedoelt. Controleer daarom je gekozen operator aan de hand van een klein geval dat je zelf kunt narekenen.

Reken een aankoop uit

De oefening gebruikt price en quantity om het aankoopbedrag te bepalen. Bewaar de uitkomst in total en toon dat getal. Toon daarna het bedrag na de vaste korting, met een berekening die op total voortbouwt.

Je hoeft de namen niet tussen aanhalingstekens te zetten: C# moet hun waarden lezen, niet hun letters tonen. Het voorbeeld uit de buurtmaaltijd laat dezelfde werkwijze zien met andere gegevens en een andere vervolgberekening. Gebruik dat patroon om jouw twee uitvoerregels te controleren.

AAN DE SLAG 0/2
1

De eerste stap

Bereken total voor 3 producten van 12 euro en toon het totaal op de eerste regel.

2

Nog een stap verder

Toon op de tweede regel het totaal na 6 euro korting. Gebruik de variabele total.

Wat je meeneemt

  • int legt het type expliciet vast; var laat het type uit de beginwaarde afleiden.
  • Een variabele bewaart een waarde; een berekening tonen verandert die niet vanzelf.
  • De gekozen operator moet passen bij de situatie, ook wanneer de code zonder fout uitvoert.

Hierna plaats je deze waarden in duidelijke tekstberichten.

Program.cs
UitvoerConsole
›
›_

Hier komt je resultaat.

Voer je code uit en ontdek
wat je hebt gemaakt.

0/2 stappen
EVEN MEEKIJKEN

Bekijk hoe het kan.

Je mag de oplossing bekijken. Deze poging telt dan niet mee als afgeronde les. Met Reset kun je daarna opnieuw zelf oefenen.