37 lines
1.3 KiB
Markdown
37 lines
1.3 KiB
Markdown
# Go 03: Kontrollfluss, for-Loops & switch ⚡
|
|
|
|
Willkommen zu **Modul 03** des Go (Golang) Kurses!
|
|
|
|
In diesem Modul lernst du, wie Go Kontrollstrukturen handhabt: Die einzige Schleife `for` (inkl. `range` und `while`-Ersatz), `if` mit Initialisierung zur Begrenzung von Variablen-Scopes und mächtige `switch`-Anweisungen.
|
|
|
|
---
|
|
|
|
## 💡 1. Das Wichtigste in Kürze
|
|
|
|
### Die 4 Gesichter der `for`-Schleife
|
|
1. **Klassisch:** `for i := 0; i < 10; i++`
|
|
2. **Bedingt (`while`):** `for bedingung`
|
|
3. **Endlos:** `for { ... }`
|
|
4. **Iterator (`range`):** `for i, v := range slice` oder `for k, v := range myMap`
|
|
|
|
### `if` mit Initialisierungs-Statement
|
|
Ermöglicht saubere Scope-Begrenzung von Hilfsvariablen:
|
|
```go
|
|
if val, ok := cache[key]; ok {
|
|
// val existiert nur in diesem Block
|
|
}
|
|
```
|
|
|
|
### `switch` in Go
|
|
- Kein automatisches Durchfallen (kein `break` erforderlich).
|
|
- Erlaubt mehrere Werte pro Case (`case 200, 201:`).
|
|
- Tagless `switch`: Ersetzt verschachtelte `if/else`-Blöcke.
|
|
|
|
---
|
|
|
|
## 🎯 Teilziele in `aufgabe.go`
|
|
|
|
1. **TODO 1:** `SummiereBereich(start, ende int) int` mit klassischer `for`-Schleife.
|
|
2. **TODO 2:** `BerechneFakultaet(n int) (int, bool)` mit while-artiger `for`-Schleife.
|
|
3. **TODO 3:** `FindeMaxUndMin(werte []int) (int, int, bool)` mit `for ... range`.
|
|
4. **TODO 4:** `HTTPStatusKategorie(statusCode int) string` mit `switch`.
|