Week 1

circle-info

Ook dit hoofdstuk bevat meer oefeningen dan je lief zijn. Zoek zelf de oefeningen uit die je aanspreken en focus je op het leren werken met methoden en deze te integreren in een grotere applicatie.

Tip van een lector: meestal als een boek veel oefeningen van een bepaald onderwerp bevat is de kans bestaande dat dit onderwerp misschien wel eens belangrijk kan zijn ;)

circle-exclamation
circle-info

Sommige oefeningen zijn van de vorm "Maak een methode die...". Het is steeds de bedoeling dat je de werking van je methode ook test in je main door deze aan te roepen.

Opwarmers (Essential)

Een extra grote hoop oefeningen om je methoden te oefenen (originele bronarrow-up-right). De oefeningen zijn ongeveer gerangschikt naar moeilijkheid.

Iedere oefening verwacht dat je steeds een methode schrijft en de werking ervan aantoont:

  • Methode Kwadraat die het kwadraat van een ingevoerd getal berekent ( het getal geef je mee als parameter).

  • Methode BerekenStraal die de straal van een cirkel kan berekenen waarvan je de diameter meegeeft (de diameter geef je mee als parameter).

  • Idem voor omtrek en oppervlakte.

  • Methode die het grootste van 2 getallen teruggeeft (beide getallen geef je mee als parameter).

  • Methode IsEven die bepaalt of een getal even of oneven is (geeft een bool terug die true is indien even).

  • Methode ToonOnEvenNummers die alle oneven getallen van 1 tot n toont waarbij n als parameter wordt meegegeven.

  • (PRO) Methode IsArmstrong die bepaalt of een getal een Armstrong getal is.

  • (PRO)Methode ToonArmstrongNummers die alle Armstrong nummers tot n toont.

Basic

Maak een methode die jezelf voorstelt op het scherm in de vorm van "Ik ben Tim Dams, ik ben 18 jaar oud en woon in de Lambrisseringsstraat 666". Deze informatie mag hardcoded in je methode staan. Bedoeling is dat je de methode kan aanroepen als volgt:

circle-info

Deze methode toont enkel zaken op het scherm en heeft dus als returntype void.

Basic 2

Zorg er voor dat je nu je naam, leeftijd en adres via parameters kan meegeven en dus de methode als volgt kunt aanhouden:

Grootste methode

Schrijf een methode die 3 ints aanvaardt en vervolgens de grootste van de 3 parameters als resultaat terug geeft.

Rekenmachine (Essential)

Maak minimaal de methoden genaamd TelOp, TrekAf, Vermenigvuldig en Deel. Je kan aan deze methoden steeds twee doubles meegeven en het resultaat dat terugkomt is uiteraard de bewerking van die twee parameters.

Maak een eenvoudig programma waarin je die methoden test.

ChatGPT generator (Essential)

Dit is geen oefening, maar wel een manier om voor je zelf extra oefeningen te maken.

Gebruik volgende prompt om één of meerdere goede Methoden-oefeningen te genereren. Vervang "XXXX" door een onderwerp of genre waar je interesse in hebt (bijvoorbeeld "counterstrike", "F1 racing", etc.).

" Je bent een lector van een hogeschool die studenten helpt met programmeren. Je bent heel goed in interessante opgaves in C# te ontwikkelen die studenten motiveert om te blijven programmeren.

Verzin een C# oefening voor mij die me doet oefenen op methoden. Methoden geven maximum 1 element terug. Gebruik dus geen tuples of sets van returntypes bij methoden.

Volgende zaken mogen in de oefening aanwezig zijn:variabelen, if else, switch, expressies, de math bibliotheek en loops. De nadruk ligt op het oefenen op methoden.

Volgende zaken mogen niet in de oefening aan bod komen: arrays, lists, linq en object georiënteerd programmeren.

Laat de oefening gaan over XXXX. Toon geen voorbeeldcode of oplossing. Toon wel voorbeelduitvoer. Leg ook expliciet uit welke methoden ik moet schrijven en hoe ze werken Stel ook 3 mogelijke uitbreidingen voor. "

circle-exclamation

Pro Rekenmachine

Kan je een eenvoudige zakrekenmachine maken (inclusief geheugen)? Voeg extra methoden naar keuze toe (denk aan macht, sinus, cosinus, modulo, etc.).

Paswoord generator methode

Maak een paswoord generator die paswoorden van bepaalde lengte genereert en bestaat uit willekeurige letters, hoofdletters en cijfers. Plaats deze code in een methode die 1 parameter aanvaardt namelijk de lengte van het paswoord dat gemaakt moet worden. De methode geeft het gegenereerde paswoord terug als resultaat. (tip gebruik een random number generator(s) om getallen te genereren die je ook kan casten naar chars dankzij de Unicode waarde van chars).

Netflix – Essentials Oefening (Methoden)

Je bent aangenomen als backend developer bij Netflix. Je eerste taak is het schrijven van enkele essentiële hulpmethoden voor een console-applicatie.

Maak een programma dat de onderstaande methoden bevat en test ze allemaal in de Main methode met invoer van de gebruiker.

Te implementeren methoden

1. ToonWelkomstBericht

  • Doel: Toont een welkomstboodschap op het scherm.

  • Parameters: naam van de gebruiker (string)

  • Werking: Print Welkom terug, [naam]! Tijd om te bingen.

  • Return type: void

2. BerekenKijktijd

  • Doel: Berekent hoe lang je bezig gaat zijn met kijken.

  • Parameters:

    • aantal afleveringen (int)

    • minuten per aflevering (int)

  • Werking: Vermenigvuldigt beide waarden.

  • Return type: int (totaal aantal minuten)

3. MagKijken

  • Doel: Controleert of een gebruiker oud genoeg is voor een serie.

  • Parameters:

    • leeftijd gebruiker (int)

    • minimumleeftijd serie (int)

  • Werking: Geeft true terug als de gebruiker oud genoeg is, anders false.

  • Return type: bool

4. GenereerTitel

  • Doel: Maakt een standaard titelstring voor de interface.

  • Parameters:

    • naam van de serie (string)

    • seizoen (int)

    • aflevering (int)

  • Werking: Geeft een string terug in het formaat [SerieNaam] - S[seizoen]E[aflevering]

  • Return type: string

Scenario in Main

Schrijf een programma dat de volgende flow uitvoert:

  1. Vraag de naam van de gebruiker en roep ToonWelkomstBericht aan.

  2. Vraag de leeftijd van de gebruiker.

  3. Vraag:

    • de naam van de serie

    • de minimumleeftijd van de serie

  4. Gebruik MagKijken:

    • Indien niet oud genoeg: Toon "Helaas, je bent te jong voor deze serie." en beëindig het programma.

    • Indien wel oud genoeg: Toon "Veel kijkplezier!"

  5. Vraag:

    • hoeveel afleveringen de gebruiker wil kijken

    • hoeveel minuten één aflevering duurt

  6. Gebruik BerekenKijktijd en toon: Totale kijktijd: X minuten

  7. Vraag:

    • seizoen

    • aflevering

  8. Gebruik GenereerTitel en toon: Je start met: [titel]

Voorbeeld output: (tekst na > is invoer)

Ander voorbeeld:

Last updated

Was this helpful?