Programoval jsem program, kterému se zadala vzdálenost nějakého objektu od slunce a program spočítal jeho Parsec.
No a nastal problém, nefunguje to. Respektive program vrací již na první pohled nesmyslné výsledky.
program parsec;
uses crt;
const zemeslunce:real=150000000;
var slong : integer;
{//////////functions////////////////////}
function clong (a,b : real) : real; {pythagorova veta}
var clong2 : real;
begin
clong2:=(a*a)+(a*b);
clong:=(sqrt(clong2)); {vrati delku prepony}
end;
function ArcSin(x:real):real; {vrati arcsin cisla}
begin
ArcSin:=ArcTan(x/sqrt(1-sqr(x)));
end;
function cparsec (x:real) : real;
var return : real;
a,b,c : real;
begin
{plenetarni trojuhelnik}
a:=zemeslunce; {a strana zeme-slunce 150 000 000km}
b:=x; {b strana slunce-zadany objekt}
c:=clong (zemeslunce,x); {c strana prepona planetarniho trojuhelniku zeme-objekt}
return:=arcsin (a/c); {spocita uhel alfa}
return:=return/60; {prepocita stupne na minuty}
cparsec:=return;
end;
{//////////body//////////////////////}
begin
Writeln ('Enter long from sun to object in km');
readln (slong);
writeln (cparsec (slong));
readkey;
end.
Fórum › Pascal
Parsec
![](img/forum_vlakno_help_vyreseno.png)
Tady vidím chybu:
clong2:=(a*a)+(a*b);
má být:
clong2:=(a*a)+(b*b);
Převod na parseky jsem nekontroloval, protože si nepamatuju definici.
Problém je zadávání vzdálenosti od Slunce v kilometrech do typu Integer. Jestli to počítáš od jeho středu, tak se s tímhle rozsahem nedostaneš ani na povrch :-). Chce to něco většího, minimálně Longint, ale radši Extended.
Chceš-li lepší odpověď, polož lepší otázku.
Moje stránka.
Moje stránka.
![](img/forum_nove_psp_new.png)
Přidej příspěvek
Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×![](/img/smile/1.gif)
![](/img/smile/2.gif)
![](/img/smile/3.gif)
![](/img/smile/4.gif)
![](/img/smile/5.gif)
![](/img/smile/6.gif)
![](/img/smile/7.gif)
![](/img/smile/8.gif)
![](/img/smile/9.gif)
![](/img/smile/10.gif)
![](/img/smile/11.gif)
![](/img/smile/12.gif)
![](/img/smile/13.gif)
![](/img/smile/14.gif)
![](/img/smile/15.gif)
![](/img/smile/16.gif)
![](/img/smile/17.gif)
![](/img/smile/18.gif)
![](/img/smile/19.gif)
![](/img/smile/20.gif)
![](/img/smile/21.gif)
![](/img/smile/22.gif)
![](/img/smile/23.gif)
![](/img/smile/24.gif)
![](/img/smile/25.gif)
![](/img/smile/26.gif)
![](/img/smile/27.gif)
![](/img/smile/28.gif)
![](/img/smile/29.gif)
![](/img/smile/30.gif)
![](/img/smile/31.gif)
![](/img/smile/1.gif)
![](/img/smile/2.gif)
![](/img/smile/3.gif)
![](/img/smile/4.gif)
![](/img/smile/5.gif)
![](/img/smile/6.gif)
![](/img/smile/7.gif)
![](/img/smile/8.gif)
![](/img/smile/9.gif)
![](/img/smile/10.gif)
![](/img/smile/11.gif)
![](/img/smile/12.gif)
![](/img/smile/13.gif)
![](/img/smile/14.gif)
![](/img/smile/15.gif)
![](/img/smile/16.gif)
![](/img/smile/17.gif)
![](/img/smile/18.gif)
![](/img/smile/19.gif)
![](/img/smile/20.gif)
![](/img/smile/21.gif)
![](/img/smile/22.gif)
![](/img/smile/23.gif)
![](/img/smile/24.gif)
![](/img/smile/25.gif)
![](/img/smile/26.gif)
![](/img/smile/27.gif)
![](/img/smile/28.gif)
![](/img/smile/29.gif)
![](/img/smile/30.gif)
![](/img/smile/31.gif)
![](/img/smile/32.gif)
Uživatelé prohlížející si toto vlákno
Uživatelé on-line: 0 registrovaných, 5 hostů
Podobná vlákna
Opět parsec — založil Yety
Moderátoři diskuze