Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
| Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
| ef_informatik:programmieren_csharp [2025-08-19 12:13] – [1.1 Installation & Hello World] sca | ef_informatik:programmieren_csharp [2025-11-18 14:55] (aktuell) – [C# in Visual Code] sca | ||
|---|---|---|---|
| Zeile 37: | Zeile 37: | ||
| Verwende eine der beiden Möglichkeiten, | Verwende eine der beiden Möglichkeiten, | ||
| - | 1. **Visual Studio** (Windows only) | + | 1. **Visual Studio** (Windows only) |
| 1. **Visual Studio Code** (Windows & Mac) | 1. **Visual Studio Code** (Windows & Mac) | ||
| Zeile 48: | Zeile 48: | ||
| - Diese Projekt enthält bereits Code, der wie unten angezeigt aussehen sollte. | - Diese Projekt enthält bereits Code, der wie unten angezeigt aussehen sollte. | ||
| - Dieses Programm ist das bekannteste Programm der Welt: **Hello World**. Alles was dieses Programm macht, ist die Nachricht '' | - Dieses Programm ist das bekannteste Programm der Welt: **Hello World**. Alles was dieses Programm macht, ist die Nachricht '' | ||
| + | |||
| + | |||
| === C# in Visual Code === | === C# in Visual Code === | ||
| + | |||
| + | 1. .NET SDK installieren: | ||
| + | 1. Check ob hat funktioniert: | ||
| + | dotnet --version | ||
| + | </ | ||
| + | 1. VSCode installieren | ||
| + | 1. C# Extension von Microsoft in VSCode installieren | ||
| + | 1. Neues C#-Projekt (ohne Top-Level Statements): | ||
| + | dotnet new console -n MyFirstApp --use-program-main | ||
| + | cd MyFirstApp | ||
| + | code . | ||
| + | </ | ||
| + | 1. Programm ausführen:< | ||
| + | dotnet run | ||
| + | </ | ||
| + | Falls man Top-Level Statements verwenden möchte, lässt man einfach `--use-program-main` weg. | ||
| + | |||
| Zeile 521: | Zeile 540: | ||
| </ | </ | ||
| - Was macht der Code? Versuche es herauszufinden, | - Was macht der Code? Versuche es herauszufinden, | ||
| - | - Schreibe nun den Code so um, dass die Schleife das unten angezeigt | + | - Schreibe nun den Code so um, dass die Schleife das unten angezeigte |
| <code csharp> | <code csharp> | ||
| ... | ... | ||
| Zeile 536: | Zeile 555: | ||
| === Aufgabe D5 === | === Aufgabe D5 === | ||
| - | Schreibe ein einfache | + | Schreibe ein einfaches |
| Folgender Code gibt einem $10$ **Zufallszahlen** im Bereich $1$ bis $5$ aus und dient als Beispiel dafür, wie man Zufallszahlen generiert: | Folgender Code gibt einem $10$ **Zufallszahlen** im Bereich $1$ bis $5$ aus und dient als Beispiel dafür, wie man Zufallszahlen generiert: | ||
| Zeile 571: | Zeile 590: | ||
| === Aufgabe E2 === | === Aufgabe E2 === | ||
| - **Primzahlen** sind positive ganze Zahlen, die nur durch sich selbst und $1$ teilbar sind, also $2, | - **Primzahlen** sind positive ganze Zahlen, die nur durch sich selbst und $1$ teilbar sind, also $2, | ||
| - | - Mache eine Kopie deines Programms. Nun soll eine Zahl eingegeben werden und sämtliche kleiner gleich dieser Zahl ausgegeben werden. | + | - Mache eine Kopie deines Programms. Nun soll eine Zahl eingegeben werden und sämtliche |
| === Aufgabe E3 === | === Aufgabe E3 === | ||
| Zeile 774: | Zeile 793: | ||
| 1. Funktion `Length`, die die Länge eines Strings bestimmt und zurück gibt. Programmiere dies ohne die Methode Length, die bei jedem String vorhanden ist. Verwende auch kein foreach (verwendet intern wohl auch Length). | 1. Funktion `Length`, die die Länge eines Strings bestimmt und zurück gibt. Programmiere dies ohne die Methode Length, die bei jedem String vorhanden ist. Verwende auch kein foreach (verwendet intern wohl auch Length). | ||
| - | 1. Funktion `NumberOfChar`, | + | 1. Funktion `NumberOfChar`, |
| - | 1. Funktion `PositionsOfChar`, | + | 1. Funktion `PositionsOfChar`, |
| 1. Funktion `Split`, die einen String bei jedem Vorkommen eines bestimmten Zeichens auftrennt und die Teile in einem Array zurückgibt, | 1. Funktion `Split`, die einen String bei jedem Vorkommen eines bestimmten Zeichens auftrennt und die Teile in einem Array zurückgibt, | ||
| Zeile 888: | Zeile 907: | ||
| </ | </ | ||
| - | < | + | < |
| ++++Aufgaben D| | ++++Aufgaben D| | ||
| Zeile 1147: | Zeile 1166: | ||
| if (z >= 2) | if (z >= 2) | ||
| { | { | ||
| - | for (int i = 2; i <= Math.Sqrt(33); i++) | + | for (int i = 2; i <= Math.Sqrt(z); i++) |
| { | { | ||
| if (z % i == 0) | if (z % i == 0) | ||
| Zeile 1350: | Zeile 1369: | ||
| // G4 | // G4 | ||
| Console.WriteLine(Length("" | Console.WriteLine(Length("" | ||
| - | Console.WriteLine(NumberOfChar(" | + | Console.WriteLine(NumberOfChar(" |
| - | WriteIntArray(PositionsOfChar(" | + | WriteIntArray(PositionsOfChar(" |
| - | WriteStringArray(Split(" | + | WriteStringArray(Split(" |
| static int Length(string s) | static int Length(string s) | ||