- A eta B puntuak AB zuzena lortzeko, AB zuzena zeiharra izango da (ez bertikala, ez horizontala)
- C puntua AB segmentuaren zuzenetik kanpo dago
Algoritmoa:
- Emanik A puntua eta B puntua, AB zuzena lortu
- Emanik C puntua, AB zuzenaren perpendikularra C puntuan lortu
- AB zuzena eta bere perpendikularra C puntuan ditugula, lerro biren ebakidura kalkulatu (P puntua lortu)
- Erpinen arteko AB distantzia eta puntuen arteko CP distantzia kalkulatu ondoren azalera zehaztu
Ariketaren urratsak ikusteko teoriako blogera jo eta
3. astea | triangeluaren azalera
artikulua aztertu.
Zure programaren hasiera:
program Triangelu_1_4 ;
var
rAx, rAy, rBx, rBy : real ;
begin
{ A puntua lehen koadrantekoa da }
repeat
writeln('OXY lehen koadrantean lan eginez') ;
write('Eman A puntuaren x koordenatua: ') ;
readln(rAx) ;
write('Eman A puntuaren y koordenatua: ') ;
readln(rAy) ;
if (rAx < 0.0) or (rAy < 0.0) then { A-ren bi koordenatuak positiboak izan behar dira }
begin
writeln('A puntuaren bi koordenatuak positiboak izan behar dira') ;
if rAx < 0.0 then
writeln('A puntuaren x koordenatua ezin daiteke negatiboa izan') ;
if rAy < 0.0 then
writeln('A puntuaren y koordenatua ezin daiteke negatiboa izan') ;
end ;
until (rAx >= 0.0) and (rAy >= 0.0) ;
writeln ;
{ B puntua ere lehen koadrantekoa izango da eta horrez gain }
{ B puntua eta A puntua "diagonal" batean egongo dira kokaturik }
repeat
writeln('OXY lehen koadrantean jarraituz ') ;
write('Eman B puntuaren x koordenatua: ') ;
readln(rBx) ;
write('Eman B puntuaren y koordenatua: ') ;
readln(rBy) ;
if (rBx < 0.0) or (rBy < 0.0) then
writeln('B puntuaren bi koordenatuak positiboak izan behar dira') ;
if (rAx = rBx) or (rAy = rBy) then
begin
writeln('AB segmentua zeiharra izan behar da') ;
if rAx = rBx then
writeln('AB segmentua ezin daiteke bertikala izan') ;
if rAy = rBy then
writeln('AB segmentua ezin daiteke horizontala izan') ;
end ;
until ((rBx >= 0.0) and (rBy >= 0.0)) and
((rAx <> rBx) and (rAy <> rBy)) ;
writeln ;
{ A eta B ezagunak direla, AB segmentuari dagokion r zuzenaren bi }
{ parametroak kalkulatu: }
{ rMalda := _______________; }
{ rDesplazamendua := ___________; }
{ ALGORITMO OSOA:
1. Emanik A puntua eta B puntua, AB zuzena lortu
2. Emanik C puntua, AB zuzenaren perpendikularra C puntuan lortu
3. AB zuzena eta bere perpendikularra C puntuan ditugula, lerro
biren ebakidura kalkulatu (P puntua lortu)
4. Erpinen arteko AB distantzia eta puntuen arteko CP distantzia
kalkulatu ondoren azalera zehaztu }
end. { PROGRAMAREN BUKAERA }
iruzkinik ez:
Argitaratu iruzkina