OLD [G_PRO] Programmeren en OO programmeren
experimentalmerge5
experimentalmerge5
  • Welkom
  • Inleiding
    • Benodigdheden
    • Afspraken code
    • Afspraken oefeningen
    • Nuttige extras
    • Dankwoord
    • Mee helpen?
  • Semester 1: Programming Principles
    • H0: Werken met Visual Studio
      • Introductie tot C#
      • Werken met Visual Studio
      • Je eerste programma
      • Input verwerken met ReadLine
      • Fouten in je code
      • Kleuren in Console
      • Oefeningen
    • H1: Variabelen en datatypes
      • De essentie van C#
      • Datatypes
      • Variabelen
      • Expressies en operators
      • Oefeningen
    • H2: Tekst in code
      • Strings en chars
      • Strings samenvoegen
      • Unicode tonen
      • Oefeningen
      • Uitbreidingsoefeningen
    • H3: Werken met data
      • Casting, conversie en parsing
      • Input verwerken en omzetten
      • Math-library en berekeningen
      • Random
      • Debuggen
      • Oefeningen
    • H4: Beslissingen
      • Beslissingen intro
      • Booleanse logica en operators
      • If
      • Scope van variabelen
      • enum
      • Switch
      • Oefeningen
    • H5: Loops
      • Loops intro
      • While en Do While
      • For
      • Nesting
      • Programma flow analyse
      • Oefeningen deel 1
      • Oefeningen deel 2
      • Oefeningen deel 3
    • H6: Methoden
      • Methoden intro
      • Bibliotheken
      • Geavanceerde methoden
      • Oefeningen
      • Uitbreidingsoefeningen
    • H7: Arrays
      • Array principes
      • Werken met arrays
      • Arrays en methoden
      • N-dimensionale arrays
      • Oefeningen deel 1
      • Oefeningen deel 2
  • Semester 2 : OOP
    • H8: Klassen en objecten
      • OOP Intro
      • Klassen en objecten in C#
      • Methoden en access modifiers
      • Properties
      • DateTime: leren werken met objecten
      • (Klassikale!) smaakmaker OOP
      • Oefeningen
    • H9: Geheugenmanagement bij klassen
      • Objecten en methoden
      • Stack en Heap
      • Null en NullReferenceException
      • Oefeningen
    • H10: Geavanceerde klassen en objecten
      • Constructors
      • Static
      • Spelen met strings
      • Oefeningen
    • H11: Arrays en klassen
      • Arrays van objecten
      • Foreach en var
      • List
      • Oefeningen
      • Extra oefeningen
    • H12: Overerving
      • Overerving intro
      • Constructors bij overerving
      • Virtual en override
      • Base keyword
      • Oefeningen
    • H13: Geavanceerde overerving
      • System.Object
      • Abstract
      • Oefeningen
  • Appendix
    • Ea-ict coding guidelines
    • Oefeningen kerkhof
  • Semester 1 appendix
    • Nice to know stuff
      • Out en Ref parameters
      • Jagged arrays
    • All-In-Projecten
      • Overzicht
      • Console Matrix
      • Ascii filmpjes maken met loops
      • Ascii filmpjes maken met methoden
      • Fun with methods: een verhaalgenerator
      • Tekst-gebaseerd Maze game
      • Conway game of life
  • Semester 2 appendix
    • Nice to know stuff
      • Klassen herbruiken
      • Operator overloading
      • Expression bodied members
    • All-In-Projecten
      • Overzicht
      • OO Textbased Game
      • War Simulator
      • Map Maker
      • Magic The Gathering API
  • Pro (geen leerstof en/of in opbouw)
    • Bitwise operators
    • Generics en collections
      • Generics methoden en types
      • Generic classes en constraints
      • Collections
      • Labo-oefeningen
    • Exception handling
      • Werken met exceptions
      • Waar exceptions plaatsen
      • Zelf uitzonderingen maken
    • Events
      • Events
      • Chat server
    • Software engineering
      • SOLID
Powered by GitBook
On this page
  • Oefening: H2-string-interpolation
  • Leerdoelen
  • Functionele analyse
  • Technische analyse
  • Technische hulp
  • Ondersteunend materiaal
  • Oefening: H2-systeem-informatie
  • Leerdoelen
  • Functionele analyse
  • Technische analyse
  • Technische hulp
  • Ondersteunend materiaal
  • Oefening: H2-weerstandberekenaar-deel1
  • Leerdoelen
  • Functionele analyse
  • Technische analyse
  • Technische hulp
  • Ondersteunend materiaal
  • Oefening: H2-weerstandberekenaar-deel2
  • Leerdoelen
  • Functionele analyse
  • Technische hulp
  • Ondersteunend materiaal
  • Oefening: H2-shell-starter
  • Leerdoelen
  • Functionele analyse
  • Technische hulp
  • Ondersteunend materiaal

Was this helpful?

Export as PDF
  1. Semester 1: Programming Principles
  2. H2: Tekst in code

Oefeningen

Oefening: H2-string-interpolation

Leerdoelen

  • gebruik van string interpolation

Functionele analyse

Oefening H1-maaltafels en H1-ruimte dienen we te herschrijven volgens de principes van string interpolation.

Technische analyse

UI

console applicatie

voorbeeldinteractie(s)

Zie oefening H1-maaltafels en H1-ruimte.

Technische hulp

Programmaverloop

Pas string interpolatie mbv $ (manier 2) toe.

Testscenario's

  • Zie oefening H1-maaltafels en H1-ruimte.

Ondersteunend materiaal

Hou het voorlopig op de cursus.

Oefening: H2-systeem-informatie

Leerdoelen

  • gebruik van string interpolation

  • gebruik van Environment class

Functionele analyse

Maak een applicatie die de belangrijkste computer-informatie (geheugen, etc) aan de gebruiker toont.

Technische analyse

UI

console applicatie

voorbeeldinteractie(s)

Uw computer heeft een 64-bit besturingssysteem: True
De naam van uw pc is: LAPTOP
Uw pc heeft 4 processorkernen.
ikke is uw gebruikersnaam.
Je gebruikt 11 megabytes aan geheugen

Technische hulp

Programmaverloop

Pas string interpolatie mbv $ (manier 2) toe. De computerinformatie kan je verkrijgen mbv de Environment-klasse. Hier enkele voorbeelden (kijk zelf of er nog nuttige properties over je computer in staan en voorzie deze ook binnen jouw code):

bool is64bit = Environment.Is64BitOperatingSystem;
string pcName = Environment.MachineName;
int procCount = Environment.ProcessorCount;
string userName = Environment.UserName;
long memory = Environment.WorkingSet; //zal ongeveer 11 MB teruggeven.

WorkingSet geeft terug hoeveel geheugen het programma van windows toegewezen krijgt. Als je dus op 'run' klikt om je code te runnen dan zal dit programma geheugen krijgen en via WorkingSet kan het programma dus zelf zien hoeveel het krijgt. (wat een vreemde lange zin).

Zoals je ziet wordt het geheugen in bytes teruggegeven. Zorg ervoor dat het geheugen steeds in mega of gigabytes op het scherm wordt getoond.

Formatteer de informatie met behulp van de $-notatie zodat deze deftig getoond worden en de gebruiker snel de belangrijke informatie over z'n systeem te zien krijgt.

Testscenario's

  • wat gebeurt er wanneer je het datatype string zou wijzigen in int?

Ondersteunend materiaal

Hou het voorlopig op de cursus.

Oefening: H2-weerstandberekenaar-deel1

Leerdoelen

  • gebruik van math class

Functionele analyse

Stel dat je in het labo een weerstand vastneemt en je kent de kleurcodes van de streepjes wel, maar niet hoe je die kunt omzetten naar de effectieve weerstandswaarde. In dit programma kunnen we de gebruiker helpen.

Technische analyse

UI

console applicatie

voorbeeldinteractie(s)

Geef de waarde (uitgedrukt in een getal van 0 tot 9) van de eerste ring: 2
Geef de waarde (uitgedrukt in een getal van 0 tot 9) van de tweede ring: 2
Geef de waarde (uitgedrukt in een getal van -2 tot 7) van de derde ring (exponent): 2
Resultaat is 2200 Ohm, ofwel 22x100.

Technische hulp

Programmaverloop

Maak een programma dat de weerstandwaarde berekent gebaseerd op:

  • Ring 1: die de tientallen voorstelt

  • Ring 2: die de eenheden voorstel

  • Ring 3: die de exponent (10 tot de macht) voorstelt. (tip:Math.Pow(10,ring3))

Gebruik drie variabelen van het type int. (we veronderstellen dus dat de gebruiker de kleurcode heeft omgezet naar een getal en dat toewijst aan de variabele)

Test dat je "formule/berekening" klopt om gebaseerd op 2 (of 3) ringen de weerstandswaarde te berekenen.

Testscenario's

  • wat gebeurt er wanneer je een hoger getal dan 9 zou invoeren?

Ondersteunend materiaal

Hou het voorlopig op de cursus.

Oefening: H2-weerstandberekenaar-deel2

Leerdoelen

  • gebruik van UNICODE

Functionele analyse

Zie deel 1.

Technische hulp

Programmaverloop

Zie deel 1 en plaats het geheel in een mooie UNICODE-tabel.

Hier enkele nuttige tekens:

╔═══════════════╦═══════════════╗
║ 
╟───────────────╫───────────────╢
║ 
╚═══════════════╩═══════════════╝

of:

Testscenario's

  • wat gebeurt er wanneer je een waarde van circle 1, 2 of 3 uit meer dan twee cijfers bestaat?

Ondersteunend materiaal

Hou het voorlopig op de cursus.

Oefening: H2-shell-starter

Leerdoelen

  • gebruik van Process.Start()

  • verwerken van uitvoer

Functionele analyse

Je kan de output van een Process.Start() programma naar je console scherm sturen. Dit vereist wat meer code. Volgende voorbeeld zal de output van het commando ipconfig /all op het scherm tonen:

System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo.FileName = "ipconfig";
process.StartInfo.Arguments = "/all"; 
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;
process.Start(); //start process

// Read the output (or the error)
string output = process.StandardOutput.ReadToEnd();
Console.WriteLine(output);
string err = process.StandardError.ReadToEnd();
Console.WriteLine(err);
//Continue
Console.WriteLine("Klaar");

Onder macOS heb je een ander commando nodig. Gebruik daar "ifconfig" voor het (uitvoerbaar) bestand en geef een lege string mee voor de argumenten.

Technische hulp

Programmaverloop

Maak enkele kleine C# programma's die bepaalde shell-commando's zullen uitvoeren en die de uitvoer in hoofdletters weergeven in plaats van in de gewone vorm. Enkele nuttige shell-commando's in de netwerk-sfeer zijn bijvoorbeeld:

hostname
arp -a
getmac (enkel onder Windows)
nslookup google.com

Testscenario's

  • Probeer van bovenstaande programma's al die, die compatibel zijn met je besturingssysteem.

Ondersteunend materiaal

Hou het voorlopig op de cursus.

PreviousUnicode tonenNextUitbreidingsoefeningen

Last updated 5 years ago

Was this helpful?

(Bron afbeelding: )

Gebruik $-string interpolatie om de informatie in de tabel te tonen zodat je volgende uitvoer kunt genereren:

https://www.esdsite.nl