Napisałem prosty szybkoliczący skrypt. Ma on liczyć pole powierzchni bocznej bryły obrotowej. Na test wziąłem stożek o wysokości 5 i promieniu 5 czyli pbocznej powinien wyjść około 111,0719 a skrypt liczy inaczej Myślę ,że sknociłem coś we wzorze . Oto kod :
program Project2;
{$APPTYPE CONSOLE}
uses
SysUtils;
var
xmax,X,Y,pole: extended ;
poletxt:string;
begin
pole:=0;
writeln(' /\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\');
writeln('< Program kreciolek Copyright by Adam Xxxxxx >');
writeln('< Obliczanie pola powierzchni dla funkcji X=Y >');
writeln(' \/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/');
writeln('-------------------------------------------');
writeln('Podaj wartość Xmax >');
readln(xmax);
while x<xmax do begin
X:=x+0.0000001;
y:=x; //wzór;
pole:=Pole+(2*pi*y*0.0000001);
end;
poletxt:=currToStr(pole);
writeln(poletxt);
readln;
end.
metodą dzielenia stożka na plasterki (małe walce) i sumowaniem pól chciałem policzyć , ale wychodzi zawsze coś koło 75. Dla czego ? I poza tym konwersja currtostr mi nie pasuje, gdy stosuję armatę w postaci Extended