program kolmnurk; uses graph, crt; type punkt=record x: integer; y: integer; z: integer; end; var p1, p2, p3: punkt; procedure algus; var d, m, viga: integer; begin p1.x:=40; {m„„ratakse kolmnurga punktide asukohad} p1.y:=40; p1.z:=10; p2.x:=100; p2.y:=0; p2.z:=10; p3.x:=0; p3.y:=100; p3.z:=10; d:=detect; initgraph(d, m, ''); end; procedure joonista; var polypoints: array[1..10] of pointtype; nor, v1, v2: punkt; begin v1.x:=p2.x-p1.x; v1.y:=p2.y-p1.y; v1.z:=p2.z-p1.z; v2.x:=p3.x-p1.x; v2.y:=p3.y-p1.y; v2.z:=p3.z-p1.z; nor.x:=v1.y*v2.z-v2.y*v1.z; nor.y:=v2.x*v1.z-v1.x*v2.z; nor.z:=v1.x*v2.y-v2.x*v1.y; if nor.x*p1.x+nor.y*p1.y+nor.z*p1.z>0 then setfillstyle(1, red) else setfillstyle(1, green); polypoints[1].x:=p1.x; polypoints[1].y:=p1.y; polypoints[2].x:=p2.x; polypoints[2].y:=p2.y; polypoints[3].x:=p3.x; polypoints[3].y:=p3.y; fillpoly(3, polypoints); end; begin algus; joonista; readln; closegraph; end.