Dany jest przedział (a;b) zawierający liczby całkowite: zapisać w tablicy liczby z tego przedziału, których wartośc równa jest sumie jej podzielników mniejszych od niej samej np. 28 = 1 + 2 + 4 + 7 + 14 Obliczyć ile liczb znajduje się w takim przedziale.
Całe zadanie zrobiłam, tylko mam problem z exportem danych gdy chce wstawić do excela te podzielniki ( poprzez macierz ) dopisują się zera, jest na wypisywanie dzielników lepszy sposób?
clc, clear all
k=0;
disp('podaj przedział <a;b>')
a=input('a= ');
b=input('b= ');
if(rem(a,1)==0)&&(rem(b,1)==0)
for(i=a:b)
s=0;
c=0;
for(j=0:i-1)
if(mod(i,j)==0)
s=s+j;
end
end
if(i==s)
k=k+1;
for g=k:k
A(g,:)=i;
for(l=0:i-1)
if(mod(i,l)==0)
c=c+1;
for m=c:c
B(g,m)=l;
end
end
end
end
end
end
elseif(rem(a,1)==0)&&~(rem(b,1)==0)
disp('twoje b nie jest całkowie podaj nowe')
else
disp('twoje a nie jest całkowite podaj nowe')
end
disp('Liczby z tego przedziału których wartość jest równa sumie jej podzielników mniejszych od niej samej')
disp(A)
xlswrite('dane.xls',B,'Nowy Arkusz','D3')
xlswrite('dane.xls',A,'Nowy Arkusz','C3')
xlswrite('dane.xls',a,'Nowy Arkusz','A1')
xlswrite('dane.xls',b,'Nowy Arkusz','B1')