The Intern's Chronicles:
Was stand diese Woche in Patricks Praktikum an? C#, C# und nochmal C#!
In meinem Praktikum bei byte5 habe ich schon einiges gelernt. Vergangene Woche bin ich dann richtig in die Programmiersprache C# eingestiegen. Du kennst meinen Blogpost von letztem Freitag noch nicht? Dann kannst du ihn dir jetzt noch durchlesen.
In meiner dritten Praktikumswoche hatte ich mich ja schon kurz mit OOP (objektorientierte Programmierung) beschäftigt. In dieser vierten Woche habe ich das Thema noch besser kennengelernt und habe erfolgreich meine Masterclass abgeschlossen. Jetzt kann ich mit Freude sagen: Ich habe einen gewissen technischen Background für C#!
Und damit es nicht zu theoretisch bleibt, erläutere ich euch mein neues Wissen wieder anhand einer Aufgabe aus dem Kurs, die ich gelöst habe: Ein Durchschnittsnoten-Rechner.
Wie letzte Woche benutze ich Visual Studio für den Code und außerdem die Konsole, in die die Werte eingetragen werden; im heutigen Beispiel die Noten aller Schüler für das Errechnen einer Durchschnittsnote. Aber nun zum Code!
Code
Als erstes habe ich mit der Methode „Console.WriteLine()“ Texte eingefügt, welche die Konsole dann anzeigt (Zeile 10 bis 13). Diese erklären, wie der Rechner funktioniert. Lest sie euch doch einfach mal durch, dann versteht ihr auch, wie der Rechner funktioniert.
Danach habe ich notwendige Variablen erstellt (Zeile 15 bis 22). Diese könnt ihr euch vorstellen wie Container, die mit den einzugebenden Werte gefüllt werden. Ein Beispiel hierfür: „int students = 0;“ setzt die Variable „students“ vom Typ Zahl auf den Wert „0“ (Zeile 18).
Und nun kommt der eigentliche Ablauf: Den ersten Part der While-Schleife könnt ihr euch vorstellen wie die Aussage: Solange dein eingegebener Wert in der Konsole nicht „-1“ ist, gebe den Text in Zeile 27 aus und speichere den darauf folgenden eingegebenen Wert in der Variablen „input“ (Zeile 24 bis 28).
Darauf folgen If-Statements, die alle möglichen Werte abdecken. Wenn beispielsweise „-1“ eingegeben wird (Zeile 30 bis 36), dann beende die Ausführung, berechne den Durchschnitt über alle gültigen Werte und gib diese in einem Text aus (Zeile 35).
Wenn jemand einen Wert größer „0“ und kleiner „7“ eingegeben hat, dann rechne diesen Wert der Variablen „sumMarks“ vom Typ Zahl hinzu und wiederhole die While-Schleife ab Zeile 25 (Zeile 37-42). Und schließlich – falls jemand einen anderen Wert eingegeben hat als „-1“ bzw. eine Zahl zwischen „1“ und „6“ Zeile (43 bis 53), dann gebe den Text aus, dass ein falscher Wert eingegeben wurde (Zeile 48) und wiederhole die While-Schleife ab Zeile 25. Als letztes folgt die Methode „Console.ReadKey()“, welche die Konsole geöffnet lässt Zeile 55).
In der Konsole könnt ihr nun das Ergebnis meines Codes ansehen. Hier wird der Einführungstext ausgegeben (Zeile 10 bis 13) und erklärt, wozu das Programm dient. Danach kommt die Aufforderung, eine Note einzugeben. Hierzu habe ich die Noten „1, 2, 3, 4, 5, 6“ nacheinander eingegeben und jeweils mit Enter bestätigt. Diese werden nun der Variablen „sumMarks“ hinzuaddiert (Zeile 40).
Die Werte „7“ und „-2“ sind ungültig, weswegen der Text „Falsche Werteingabe!“ ausgegeben wird (Zeile 48). Die While-Schleife aus Zeile 25 beginnt wieder, eine Werteingabe wird erwartet. Schließlich beende ich das Programm mit der Eingabe „-1“ und errechne damit meine Durchschnittsnote. Wie ihr sehen könnt, werden nur 6 Schüler erfasst, da die Werte „7“ und „-2“ keine gültigen Noten sind und damit keine echten Ergebnisse darstellen können – also werden sie nicht in der Berechnung berücksichtigt. Die Durchschnittsnote für die 6 Schüler lautet also 3,5.
Konsolenausgabe eines Durchschnittsnotenrechners
Ich hoffe, dieses Beispiel hat anschaulich gemacht, was man mit ein paar Zeilen Code schon Nützliches und Cooles basteln kann. Vielleicht hat es euch ja selbst Lust gemacht, loszucoden. 😊
Nach zwei Wochen konnte ich meinen Udemy-Kurs abschließen und kenne nun einige wichtige Grundlagen für die Programmiersprache C#. Ich muss sagen, dass der Kurs wirklich gut zu verstehen war und wenn ich mal bei einer Challenge nicht weiter kam, gab es ein Lösungsvideo zu allen Aufgaben, das war auch ab und an sehr nützlich.
Jetzt, wo ich mit den Grundlagen von C# vertraut bin, geht es für mich in Woche fünf weiter mit Aufgaben für Kundenprojekte. Ich bin sehr gespannt auf meine nächsten kleinen Abenteuer im Coding-Dschungle. 😉
© byte5
byte5-Praktikant Patrick Haag macht eine Gewinnerpose
Außerdem werden Laura und ich nächste Woche uns wieder ans Filmen machen. Ich freue mich schon auf das nächste Video, es macht wirklich Spaß, mein Praktikum als Blog und in Videoform zu dokumentieren.
All das neue Wissen aus der Masterclass lasse ich jetzt am Wochenende sacken. Ich habe vor, die Serie, die ich gerade schaue, zu Ende zu gucken: „Anne with an E“, Staffel 2.
Nächste Woche ist schon Halbzeit für mich in meinem Praktikum bei byte5. Ich bin gespannt, was ich als nächstes lerne und werde auch mal einen Blick zurück auf die letzten paar Wochen werfen. Bis dahin!
Euer Patrick
Aktuelle Blogposts
12.03.2024
Neu in 2024
Laravel 11 Release
Laravel 11 ist da! Erfahren Sie alles über die neuesten Features, einschließlich PHP 8.2 Unterstützung, verbesserte Sicherheit, Effizienz in der Entwicklung und die Einführung von Laravel Reverb für Echtzeit-WebSocket-Kommunikation.
11.03.2024
5 innovative Web3-Projekte aus Deutschland
Deutsche Unternehmen gehen voran und brillieren mit spannenden Innovationen im Web3. Lesen Sie mehr darüber.
29.02.2024
Sicher im Web3
Smart Contract Audit
Wie sicher sind Smart Contracts? Für unsere Kund:innen setzt das byte5 Team Smart Contract Audits um, in denen potenzielle Sicherheitslücken aufgedeckt und geschlossen werden.
01.02.2024
Wissenstransfer
Laravel Schulungen von byte5.
Wir bieten Laravel-Schulungen für PHP-Entwickler und Unternehmen. Erfahren Sie mehr über unser Angebot.
22.01.2024
byte5-Begrüßungsserie
Willkommen bei byte5 ... Timo Paul
In unserer Blogserie stellen sich die neuesten Mitglieder des byte5-Teams vor. Heute: PHP-Entwickler und Teamlead, Timo.
Dein Praktikum bei byte5
Jetzt bei byte5 bewerben!