Ich hab hier folgende Aufgabenstellung, ich weiß zwar was Verbunde sind und wie man sie erstellt, aber ich kapier die Angabe nicht wie ich das angehe? Was sind Segmente? Wie soll der Algorithmus aussehen? Ich kapier's einfach nicht ;(
Vielleicht kann mir jemand hier helfen...
Gegeben ist folgende Datenstruktur zur Verwaltung von Straßen in einem Navigationssystem.
Straßen bestehen aus einer Folge an Segmenten, und jedes Segment besteht jeweils aus einem
Startpunkt und einem Endpunkt.
Entwerfen Sie einen Algorithmus float distance(↓Street street), der die Gesamtlänge
der einzelnen Segmente einer Straße berechnet. Sie können für die Längenberechnung eine
Funktion float sqrt(↓float x) zur Berechnung der Quadratwurzel einer Zahl x
verwenden.
Entwerfen Sie zusätzlich einen Algorithmus float addPoint(↓Street street ↓Point p),
der, wenn möglich, einen Punkt vom Typ Point an das Ende einer Straße hinzufügt und die
neue Gesamtlänge der Straße berechnet.
Vielleicht kann mir jemand hier helfen...
Gegeben ist folgende Datenstruktur zur Verwaltung von Straßen in einem Navigationssystem.
Straßen bestehen aus einer Folge an Segmenten, und jedes Segment besteht jeweils aus einem
Startpunkt und einem Endpunkt.
Java:
final int max = ... //maximale Anzahl an Segmenten einer Straße
type Point = {
float x
float y
}
type Segment = {
Point startPoint
Point endPoint
int segmentID //eindeutige ID eines Segments
}
type Street {
Segment[1:max] segments //Feld zur Verwaltung von Segmenten
int nrSegments //momentane Anzahl an Segmenten im Feld
}
der einzelnen Segmente einer Straße berechnet. Sie können für die Längenberechnung eine
Funktion float sqrt(↓float x) zur Berechnung der Quadratwurzel einer Zahl x
verwenden.
Entwerfen Sie zusätzlich einen Algorithmus float addPoint(↓Street street ↓Point p),
der, wenn möglich, einen Punkt vom Typ Point an das Ende einer Straße hinzufügt und die
neue Gesamtlänge der Straße berechnet.