Страница 1 из 1

Помогите с задачей на циклы... (Delphi или Pascal)

Добавлено: 21 дек 2006, 18:29
Anton_XXX
Привет всем! Вот не могу до конца доделать задачу: Вычислить произведение n сомножителей 2/3*4/4*8/5*16/6*32/7... .

Re: Помогите с задачей на циклы...

Добавлено: 21 дек 2006, 19:10
Anton_XXX
Ну помогите мне пожалуйста!!! Срочно!!!

Re: Помогите с задачей на циклы...

Добавлено: 21 дек 2006, 21:01
Anton_XXX
На Pascal'е

Re: Помогите с задачей на циклы...

Добавлено: 21 дек 2006, 21:53
Колядин Максим
Ну если знак "/" в твоём условии означает "разделить" тогда вот код.

Код: Выделить всё

uses crt;
Var  n,y: integer;      
      a,b,sum: real;
begin
clrscr;
write('Vedite N: '); readln(n);
y:=0;
a:=2;
b:=3;
sum:=a/b;
n:=n-1;
while y<>n do begin
   a:=a+a;
   b:=b+1;
   sum:=sum*(a/b);
   inc(y);
end;
writeln('OTBET - ',sum);
readkey;
end.
Из-за типа real ответ будет получаться, напимер если N=1, типа
6.6666666666970E+0001, хотя должен 0.666666666, так что не обращай на это внимания, это не ошибка. Можешь использовать round

Код: Выделить всё

....
writeln('OTBET - ',round(sum));
....
тогда ответ округлится до ближайшего целого (Ответ, при N=1, будет 1. Т.к ближайшее целое к числу 0.6 будет 1)

Re: Помогите с задачей на циклы... (Delphi или Pascal)

Добавлено: 22 дек 2006, 06:22
Oleg_Rus
можно просто при распечатке дописать
Write(sum:3:3);