Технический форум

Технический форум (http://www.tehnari.ru/)
-   Delphi, Kylix and Pascal (http://www.tehnari.ru/f43/)
-   -   Помогите с написанием программы (http://www.tehnari.ru/f43/t47787/)

PacMan 20.02.2011 16:10

Помогите с написанием программы
 
Помогите на паскале программу написать......Определить функцию, которая возвращает обьём шара, вычисляемый по заданному радиусу. Используя данную функцию найти величину Z=(v1+v2+v3)/3, где v1, v2, v3-обьемы шаров с радиусами r1=5.2, r2=4, r3=4.8.

shrek=) 20.02.2011 16:29

Пожалуйста:
Код:

const
r1=5.2;
r2=4;
r3=4.8;
var
r:real;
function v(r:real):real;
var
v1,v2,v3,v,z:real;
begin
v:=(4/3)*(pi*(sqr(r)*r));
writeln ('v=',v);
 v1:=(4/3)*(pi*(sqr(r1)*r));
v2:=(4/3)*(pi*(sqr(r2)*r));
v3:=(4/3)*(pi*(sqr(r3)*r));
z:=(v1+v2+v3)/3;
writeln ('z=',z);
end;
begin
write('r=');
readln(r);
v(r);
readln
end.


Vladimir_S 20.02.2011 17:28

Можно, конечно, и так - но мне кажется несколько странным и излишним засовывание вычисления объемов шариков в тело функции. Я бы немножко подправил:
Код:

const
 r1=5.2;
 r2=4.0;
 r3=4.8;

var
 z:real;

function v(r:real):real;
 begin
  v:=(4/3)*(pi*(sqr(r)*r));
 end;

begin
 z:=(v(r1)+v(r2)+v(r3))/3;
 writeln ('z= ',z:7:3);
 readln
end.


Хелен 21.02.2011 14:01

Точно! чем короче, тем быстрее работает. =)

PacMan 21.02.2011 18:19

спасибо)


Часовой пояс GMT +4, время: 10:03.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.