Thema: Delphi DreiecksErkennung Frage

Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#15

Re: DreiecksErkennung Frage

  Alt 6. Okt 2009, 22:30
Na denn mal hier die Funktion zu reinen Dreiecks-Erkennung:
Delphi-Quellcode:
function IstDreieck( a, b, c : integer ) : boolean;
begin
  Result :=
    ( ( a + b ) > c ) and
    ( ( a + c ) > b ) and
    ( ( b + c ) > a );
end;
geht natürlich auch mit extended Werten
Delphi-Quellcode:
function IstDreieck( a, b, c : extended ) : boolean;
begin
  Result :=
    ( ( a + b ) > c ) and
    ( ( a + c ) > b ) and
    ( ( b + c ) > a );
end;
Auf die gleiche Weise kannst Du Funktionen für die anderen Eigenschaften bilden.

Gleichschenklig:
( a = b ) oder ( b = c ) oder ( c = a )
Gleichseitig:
( a = b ) und ( b = c ) // und ( a = c ) kann man sich hier schenken
Mit einem rechten Winkel:
( ( a² + b² ) = c² ) oder ( ( b² + c² ) = a² ) oder ( ( a² + c² ) = b² )

ansonsten ist das Dreieck halt unregelmäßig.

Zitat von Wolfgang Mix:
@Sir Rufo

Du hast vollkommen Recht.
3 (verschieden lange) Seiten, verbunden an den Endpunkten, ergeben immer ein Dreieck.
Fragen wir ihn morgen, was er untersuchen wiil.

Gruß

Wolfgang
Jo, aber mittlerweile hat sich mein Tunnel erhellt

Es geht um die Länge von 3 Stäben (a,b,c) und die Frage, ob man aus diesen Stäben ein Dreieck legen könnte.

Wenn wir also 2 Stäbe mit 1m Länge und einen Stab mit 3m Länge haben, können wir daraus kein Dreieck bilden.
Darum auch die Abfragen ob die Summe von 2 Seiten länger als die 3. Seite ist, dann kann ich ein Dreieck bilden.

Der TE hat hier eigentlich falsch beschrieben
Zitat von youcefdar:
Die Aufgabe ist es anhand der wErte von a,b,c herauszufinden o es ein Dreieck ist, und falls es eins ist ob es gleichschenklig ist oder gleichseitig ist.
Weil rein aus den Längenangaben kann nur ermittelt werden, ob damit ein Dreieck möglich wäre.
Ob es eins ist kann ich nur machen, wenn mir die Lage im Raum bekannt ist
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat