Hej.
Pisałem tutaj kilka dni temu i uzyskałem szybką pomoc więc teraz postanowiłem napisać znowu. Otóż przerabiam sobie zadania w Pascalu i jedno zadanie brzmi:
Utwórz aplikację konsolową, która oblicza dla podanej w stopniach wartości kąta x wartość wyrażenia:
sin^2(x) + cos^2(x)
Wydaje się nie najgorsze, ale mam problem z zapisaniem wyrażenia, bo zrobiłem je na 3 sposoby i każde podaje mi inny wynik, chociaż wszystkie wydają mi się poprawne.
program Project1;
uses
Classes, SysUtils, CustApp;
var
x, stopnie:real;
begin
Write('Podaj kat ');
Read(stopnie);
x:=stopnie*pi/180; // tutaj zamiana stopni na radiany
WriteLn('Wartosc kata ', round(stopnie), ' dla wyrazen ');
WriteLn('1. sin^2(x) + cos^2(x) = ');
WriteLn('#1: ', sqr(sin(x))+sqr(cos(x)):4:4);
WriteLn('#2: ', sqr(sin(x)+sqr(cos(x))):4:4);
WriteLn('#3: ', (sin(x)*sin(x))+(cos(x)*cos(x)):4:4);
ReadLn();
ReadLn();
end.
Po wywołaniu programu otrzymuję wynik (dla 20 stopni)
Podaj kat 20
Wartosc kata 20 dla wyrazen
1. sin^2(x) + cos^2(x) =
#1: 1.0000
#2: 1.5007
#3: 1.0000