Hey!
Ich habe eine Frage zu Strukturen und For-Schleifen. Ich möchte ein TSP in Swift umsetzen und habe dafür eine Struktur für verschiedene Orte angelegt.
Dazu ein paar Orte definiert
Und wollte in einem ersten Schritt die Luftdistanz von allen Orten nach Jena berechnen. Per Hand funktioniert das auch:
Alles anzeigen
Das wollte ich jetzt in einer Schleife standardisieren und habe dafür folgende Zeilen geschrieben:
Hier meint Swift aber in Zeile 6, dass ziel eine Konstante wäre und daher nicht veränderbar sei. Das .distanz ist aber als Variable in der Struktur definiert und lässt sich beim händischen Berechnen ja auch überschreiben. Wie schreibe ich das, dass ich aus die 15 Zeilen oben in eine Schleife packen kann? Danke im Voraus
Ich habe eine Frage zu Strukturen und For-Schleifen. Ich möchte ein TSP in Swift umsetzen und habe dafür eine Struktur für verschiedene Orte angelegt.
Quellcode
- var J = Ort(name: "Jena", nordKoordinate: 50.927, ostKoordinate: 11.589, distanz: 0)
- var EF = Ort(name: "Erfurt", nordKoordinate: 50.978, ostKoordinate: 11.029, distanz: 0)
- var NDH = Ort(name: "Nordhausen", nordKoordinate: 51.500, ostKoordinate: 10.791, distanz: 0)
- var SHL = Ort(name: "Suhl", nordKoordinate: 50.860, ostKoordinate: 10.693, distanz: 0)
Und wollte in einem ersten Schritt die Luftdistanz von allen Orten nach Jena berechnen. Per Hand funktioniert das auch:
Quellcode
- nord = J.nordKoordinate - EF.nordKoordinate
- ost = J.ostKoordinate - EF.ostKoordinate
- EF.distanz = sqrt(nord*nord) + sqrt(ost*ost)
- nord = J.nordKoordinate - NDH.nordKoordinate
- ost = J.ostKoordinate - NDH.ostKoordinate
- NDH.distanz = sqrt(nord*nord) + sqrt(ost*ost)
- nord = J.nordKoordinate - SHL.nordKoordinate
- ost = J.ostKoordinate - SHL.ostKoordinate
- SHL.distanz = sqrt(nord*nord) + sqrt(ost*ost)
- print(EF.distanz)
- print(NDH.distanz)
- print(SHL.distanz)
Das wollte ich jetzt in einer Schleife standardisieren und habe dafür folgende Zeilen geschrieben:
Hier meint Swift aber in Zeile 6, dass ziel eine Konstante wäre und daher nicht veränderbar sei. Das .distanz ist aber als Variable in der Struktur definiert und lässt sich beim händischen Berechnen ja auch überschreiben. Wie schreibe ich das, dass ich aus die 15 Zeilen oben in eine Schleife packen kann? Danke im Voraus