|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Задача на вложенные циклы
Дано действительное число х. Последовательность а1, а2,… образована по следующему закону:
A(n)=x/sqrt(x)*(n+2)! Получить а1 + ... + ak, где k- наименьшее целое число, удовлетворяющее двум условиям: k>10 и A(k+1)<10^-5 |
#2
|
|||
|
|||
А кто тебе сказал, что это задача на вложенные циклы?
Это задача на цикл While... Код:
function fact(n : integer) : integer; var i : integer; begin result := 1; if n > 1 then for i := 2 to n do result := result * i; end; function f(x : double; n : integer) : double; begin result := x/sqrt(x)*(fact(n+2)); end; procedure makeA(x : double); var n : integer; begin n := 1; while (n < 10) or (f(n+1) > exp(10,-5)) do begin writeln(format('a[%d] = %.8f',[n,f(n)]); end; end; PS. Код для консольки. |