|
|
вернуться в форумОбщий форумwhi i dot WA. please help me?here is a my program. uses math; const p=3.14; var a,r:integer; s,angl,cosa:real; begin readln (a,r); if (2*r<a) then s:=p*r*r else if (sqrt(2)*r>a) then s:=a*a else begin cosa:=a/(2*r); angl:=2*arccos(cosa); angl:=p/2-angl; s:=((a/2)*sqrt(r*r-(a*a)/4))+angl*r*r/2; end; writeln (s*4:3:3); end. Re:Problem 1084. I need help? read it? if you don't undestend my program please write your program me? Re: whi i dot WA. please help me?here is a my program. > uses math; > const p=3.14; -> p = pi , it will more accurate > var a,r:integer; > s,angl,cosa:real; > > begin > readln (a,r); > if (2*r<a) then > s:=p*r*r > else > if (sqrt(2)*r>a) then > s:=a*a > else > begin > cosa:=a/(2*r); > angl:=2*arccos(cosa); -> there isn't arccos function use arctan function > angl:=p/2-angl; > s:=((a/2)*sqrt(r*r-(a*a)/4))+angl*r*r/2; -> s := s * 4; > end; > writeln (s*4:3:3); -> s:10:3 not s*4 > end. > Good luck whi i dot WA. please help me?here is a my program. uses math; const p=3.14; { -> p = pi , it will more accurate} var a,r:integer; s,angl,cosa:real; begin readln (a,r); if (2*r<a) then s:=p*r*r else if (sqrt(2)*r>a) then s:=a*a else begin cosa:=a/(2*r); angl:=2*arctan(cosa); angl:=p/2-angl; s:=((a/2)*sqrt(r*r-(a*a)/4))+angl*r*r/2; s := s * 4; end; writeln (s:10:3); end. |
|
|