MINT üben

Rust und Go: sicher, schnell

Zwei Textaufgaben mit Hinweisen und Erwartungshorizont zu Go und zu Ownership in Rust.

Dein Fortschritt:
0 / 0 Aufgaben
1

Die Kasse der Klassenfahrt

AFB I–II

Die Klasse 9c sammelt Geld für die Klassenfahrt. Pia hat in Go ein kleines Programm geschrieben, das die bisherigen Beiträge addiert. []int{25, 30, 25, 40} ist in Go eine Liste ganzer Zahlen, und for _, b := range beitraege geht die Liste Element für Element durch.

Go
package main

import "fmt"

func main() {
	beitraege := []int{25, 30, 25, 40}
	summe := 0
	for _, b := range beitraege {
		summe += b
	}
	fmt.Println("Summe:", summe)
}
  1. Nenne drei Stellen, an denen sich das Go-Programm in der Schreibweise von einem Java-Programm unterscheidet.
  2. Bestimme die Ausgabe des Programms.
  3. Pias Freund ergänzt die Zeile anzahl := len(beitraege), benutzt anzahl aber nirgends. Das Programm lässt sich danach nicht mehr übersetzen. Erläutere, warum Go hier so streng ist.

Hinweise

Hinweis zu Aufgabe a)
Achte auf die Variablendeklaration, den Programmrahmen, die Ausgabe und die Zeilenenden.
Hinweis zu Aufgabe b)
Addiere alle Elemente der Liste.
Hinweis zu Aufgabe c)
Überlege, was eine unbenutzte Variable über den Code verraten kann.