# Liegen drei Punkte auf einer Geraden?

## Problembeschreibung

******************************************
Dokumentnummer: D1548
******************************************
Es ist ein Programm zu erstellen, welches überprüft, ob drei gegebene
Punkte auf einer Geraden liegen oder nicht.

## Problemlösung

EINGABE

P:read("Gib eine Liste mit 3 Punkten ein");

VERARBEITUNG

Koordinaten der Punkte bestimmen

x1:P[1][1];

y1:P[1][2];

x2:P[2][1];

y2:P[2][2];

x3:P[3][1];

y3:P[3][2];

Geradengleichung

g(x,y):=y=k*x+d;

Eine Gerade durch die ersten zwei Punkte legen

g1:g(x1,y1);

g2:g(x2,y2);

l:solve([g1,g2],[k,d]);

k:ev(k,l[1][1]);

d:ev(d,l[1][2]);

f(x):=k*x+d;

f(x);

AUSGABE

if abs(f(x3)-y3)<0.00001
           then print("Die drei Punkte liegen auf einer Geraden")
           else print("Die drei Punkte liegen nicht auf einer Geraden")$