- sqrt() funtzioak zenbaki baten erro karratua ematen du, emaitza zenbaki erreal bat izango da
- arctan() funtzioak tangente bati dagokion angelua ematen du radianetan, emaitza zenbaki erreal bat izango da
Ariketa:
XY planoan dagoen rP puntu baten koordenatu kartesiarretan teklatutik irakurri. rP puntuari dagozkion koordenatu polarrak lortu.
rP puntuaren koordenatu polarraren angelua gradu-minutu-segundotan radianetan pantailaratu.
Hauxe izan daiteke balizko kodifikazio bat:
{-----------------------------------------------------------
Demagun P puntua lehen koadrantean dagoela, hots,
P puntuaren koordenatu biak positiboak direla.
Kontuz P puntua OY ardatzean dagoenean. Adibidez:
P(0.0, 7.2) denean Alfa angeluaren tangenteak
infinitu balioko du eta ondorioz exekuzio-denborako
errorea gertatuko da.
-----------------------------------------------------------}
PROGRAM KartesiarPolar ;
VAR
rPx, rPy, rDist, rAng : Real ;
BEGIN
WriteLn('//////////////////////////////////////') ;
WriteLn ;
Write('P puntuaren x koordenatua eman: ':40) ; { sarrera hau kontrolatu beharko litzateke ezin daitekeelako 0.0 izan }
ReadLn(rPx) ;
Write('P puntuaren y koordenatua eman: ':40) ;
ReadLn(rPy) ;
rDist := sqrt(sqr(rPx) + sqr(rPy)) ;
rAng := arctan(rPy / rPx) ;
WriteLn ;
WriteLn('OP Distantzia = ':24, rDist:0:5, ' unitate') ;
WriteLn('Alfa angelua = ':24, rAng:0:5, ' radian') ;
WriteLn ;
WriteLn('Koordenatuak: (':25, rPx:0:3, ', ', rPy:0:3, ') = [', rDist:0:3, ' | ', rAng:0:3, ']') ;
WriteLn ;
WriteLn('//////////////////////////////////////') ;
ReadLn ;
END. { PROGRAMAREN BUKAERA }
iruzkinik ez:
Argitaratu iruzkina