Rand() komutu ile birbirinden farklı sayı dizisi oluşturmak istiyoruz. Bunun için ihtiyacımız olan kodları aşağıda veriyorum.
Örneğin fonksiyonda sutun sayısını 10 olarak girdiniz. Bu fonksiyon size 2'den başlayarak 10'a kadar 9 sütunluk, birbirinden farklı sayılar dizisi üretecektir.function[sayi]=genetic_algorithm(sutun) durum=1; i=1; while durum==1 sayi(i)=round(2+(sutun-2)*rand()); if i~=1 s=i; while s~=1 while sayi(s-1)==sayi(i) sayi(i)=round(2+(sutun-2)*rand()); s=i; end s=s-1; end end if length(sayi)==sutun-1 durum=0; end i=i+1; end %random sayılardan aynısının bulunup % bulunmadıgını kontrol eder for i=1:length(sayi)-1 for j=i+1:length(sayi) if sayi(i)==sayi(j) 'aynı sayı var, algoritma hatalı' % i,j end end end end
Teşekkürler , bende bir şey ekleyeyim :)
YanıtlaSilfonksiyonun sonuna ---> sayi=[sayi 1];
eklerseniz sayılarınıza 1 i de eklersiniz...
.
.
.
sayi=[sayi 1];
end ! ile bitecek
function[sayi]=genetic_algorithm(sutun)
Sil|
Error: Function definitions are not permitted in this context.
böyle bir hata veriyor
çalışmıyor hata veriyor bu
YanıtlaSilfunction[sayi]=genetic_algorithm(sutun)
|
Error: Function definitions are not permitted in this context.
bu hatayı veriyor
Fonksiyondan çıkartarak m file dosyası için de deneyin, denerken sutun degişkenine bir deger verin
Sil