
Добавил:
DungeonMaster
t.me
мой будущий Dungeon
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:IT ФЭЛ, кафедра МНЭ, 2 сем, Matlab / ЛР7 / lab7_v1_1
.m global F
m = input('Введите положительное число: ');
F=zeros(1,m);
disp('Разложение на слагаемые: ');
i=1;
dec(F,m,m,i); % задаем аргументы функции
function dec(F,n,k,i)
if n < 0
elseif n == 0
for j=1:i
if j>numel(F) % индекс не превышает размерность массива
break;
end
if F(j)==0
disp(' ');
else
fprintf('%d ',F(j));
end
end
else
if n-k >= 0
F(i) = k;
dec(F, n-k, k, i+1);
end
if k-1>0
dec(F,n,k-1,i);
end
end
end
m = input('Введите положительное число: ');
F=zeros(1,m);
disp('Разложение на слагаемые: ');
i=1;
dec(F,m,m,i); % задаем аргументы функции
function dec(F,n,k,i)
if n < 0
elseif n == 0
for j=1:i
if j>numel(F) % индекс не превышает размерность массива
break;
end
if F(j)==0
disp(' ');
else
fprintf('%d ',F(j));
end
end
else
if n-k >= 0
F(i) = k;
dec(F, n-k, k, i+1);
end
if k-1>0
dec(F,n,k-1,i);
end
end
end