Processing math: 14%
Akademisyenler öncülüğünde matematik/fizik/bilgisayar bilimleri soru cevap platformu
1 beğenilme 0 beğenilmeme
437 kez görüntülendi

nrparts:= function(n)
local np;
np:= function(n, m)
local i, res;
if n = 0 then
return 1;
fi;
res:= 0;
for i in [1..Minimum(n,m)] do
res:= res + np(n-i, i);
od;
return res;
end;
return np(n,n);
end;
nrparts(15);
176

p(n) n tamsayının ayrışım sayısı olmak üzere GAP kullanılarak yazılan p(15) için 176'yıveren Sayı  Bölümlemesi(Number \ of \ partitions / Partition \ Integers) algoritmasının çalışma aşamalarını açıklamak istiyoruz. 

n = 1           yol: 1        sayı: 1

n = 2           yol: 1+1  ve 2    sayı: 2

n= 3            yol: 1 + 2 ve 1 + 1 + 1 ve 3    sayı: 3

n = 4           yol: 1 + 2 + 1 ve 1 + 1 + 1 + 1 ve 2 + 2 + 1 ve 1 + 3 ve 4      sayı: 5

.......

1 \ 2 \ 3\ 5 \ 7\ 11 \ 15\ 22\ 30 ... 176 ... bu sayede ayrışımları gerçekleştiriyoruz. 

O halde yazılan algoritmanın adımlarını p(15) = 176 için açıklamada yardımcı olur musunuz?

m değerinin ne olduğunu anlasam devamını getireceğim ama karar veremiyorum.

Teorik Bilgisayar Bilimi kategorisinde (21 puan) tarafından 
tarafından düzenlendi | 437 kez görüntülendi
20,333 soru
21,889 cevap
73,624 yorum
3,084,352 kullanıcı