макс3013
09.04.2020 18:17

Составить программу для вычисления суммы k членов ряда ∑_ (n = 1) ^k (x ^ (n) / n), где k определяется из критерия, || Uk | - | Um || <ебселунт, где ебселунт - заранее заданная точность вычисления и m = k + 1. При вводе данных необходимо учитывая то, x может принимать любое значение из допустимого диапазона, который приведен в условии каждой конкретной задачи. Если такой диапазон не указан, то ограничений на значение переменной x нет. При составлении программы использовать рекурсивную функцию для вычисления Um с рекуррентной формулы U_m = U_n * x*( n / (n-1)), m = n + 1 и | x | <1.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
дядяррррр
17.10.2020 01:22

n - входной параметр программы. нужно посчитать сколько действий выполняет программа в зависимости от n.

Например, если программа выполняет ограниченное количество действий - вне зависимости от n она будет считаться конечное время. А если есть какие-нибудь циклы - время выполнения программы будет расти в зависимости от параметра.

 

пример 1: программа вычисления площади квадрата по его стороне.

два действия - перемножить два числа и вывести результат. F(n) = 2;

 

пример 2: программа вычисления факториала:

присваиваем результату 1

сравниваем n<2.

если верно - печатаем результат и выходим

иначе результат := результат * n

    n:=n-1

и снова на сравнение

 

здесь F(n) = 1{начальное присвоение} + 3(n-1){сравнение и присвоения в цикле, который выполняется n-1 раза} + 1 {вывод результата} = 3n - 1

т.е время работы программы линейно возрастает при увеличении n

0,0(0 оценок)
Ответ:
hcufiyicii
24.10.2022 13:45

1.


Program num1;
Uses crt;
Var
a :array [1..100] of integer;
i,k,n, s : integer;
Begin
clrscr;
s:=0;
write('K=');readln(k);
write('N=');readln(n);
for i:=1 to n do 
readln(a[i]);
for i:=1 to n do
if (a[i] MOD k)=0 then s:=s+a[i];
writeln('S=',s);
End.

 

2.

Program num2;
Uses crt;
Var
a :array [1..100] of real;
i,n,j : integer;
x : array [1..100] of real;
Begin
clrscr;
write('n=');readln(n);
for i:=1 to n do 
readln(a[i]);
j:=1;
for i:=1 to n do
if a[i]=0 then
begin
x[j]:=i;
j:=j+1
end;
for i:=1 to j-1 do
write(x[i],' ');
End.

 

3.

 

Program num3;
Uses crt;
VAr
a :array [1..100] of real;
i,n : integer;
Begin
clrscr;
write('n=');readln(n);
for i:=1 to n do
readln(a[i]);
for i:=1 to n do
begin
if a[i]<>0 then
if a[i]>0 then
begin
writeln('Положительное встречается раньше');
break
end else
begin
writeln('Отрицательное встречается раньше');
break
end;
end;
End.

 

4.

Program num4;
Uses crt;
Var
a : array [1..100] of real;
i, n, j :integer;
Begin
clrscr;
write('n=');readln(n);
a[n+1]:=a[n]+1;
for i:=1 to n do
readln(a[i]);
j:=0;
i:=1;
while i<n do
begin
if a[i]<a[i+1] then
begin
j:=j+1;
i:=i+1
end
else
begin
writeln('Последовательность невозрастающая');
break
end;
end;

if i=n then writeln('Последовательность возрастающая');
End.

 

 

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота