Matlab da vektörlerin matrise atanması
Arkadaşlar merhaba, bu yazımda sizlere bir vektörün matrise nasıl aktarılır sorusunun cevabını vereceğim.
Bu seferki yazımı biraz detaylı anlatarak amaç vektör ve matris kullanımını bir nebze daha derin anlatmak.
Önce genel mantığını anlatacağım ki tüm programlara dillerine uyarlanabilsin. Bir örnek üzerinden anlatmaya çalışacağım .. Şimdi elimizde 100 elamanlı bir vektör düşünelim ve bunu bir matrise yazdırmaya çalışalım. Şunu belirteyim hemen bir eleman sayıları birbiri ile uyuşmalı , yani demem şu ki 100 elemanlı bir vektörü 20x5 ,10x10 50x2 bir matrise atayabiliriz . yani satır ve sutun çarpımı vektörün eleman sayısına eşit olmak zorunda. Şimdi ben bu örneği satır satır açıklayarak çözeceğim .
Matlab için çözümü (ben 10x10 luk bir matris için çözdüm bu soruyu)
Çözüm:
A=round(100*rand(1,100));
x=1;
B=[];
for i=1:10
for j=1:10
B(i,j)=A(x);
x=x+1;
end
end
disp(B);
A=round(100*rand(1,100)); burada 100 elemanlı bir vektör oluşturduk.
x=1; vektörün elemanlarını dolaşacak değişkenin ilk değeri
B=[];Boş bir matris atadım
for i=1:10 satırları atayan döngü
for j=1:10 sutunları atayan döngü
B(i,j)=A(x); A vektörünün elamanlarını B nin i. satır ve j. sütünuna atayan kısım
x=x+1; ( ilk değerini 1 atadığım döngü elemanı, bu ifade satırxsutun kadar çalışacağı için
A vektörünün bütün elemanlarına ulaşabiliyorum. )
end
end
disp(B);
Faydalı olması ümidi ile ...
Daha fazlası için bana ulaşın YUNUS SAVAŞ
Bu seferki yazımı biraz detaylı anlatarak amaç vektör ve matris kullanımını bir nebze daha derin anlatmak.
Önce genel mantığını anlatacağım ki tüm programlara dillerine uyarlanabilsin. Bir örnek üzerinden anlatmaya çalışacağım .. Şimdi elimizde 100 elamanlı bir vektör düşünelim ve bunu bir matrise yazdırmaya çalışalım. Şunu belirteyim hemen bir eleman sayıları birbiri ile uyuşmalı , yani demem şu ki 100 elemanlı bir vektörü 20x5 ,10x10 50x2 bir matrise atayabiliriz . yani satır ve sutun çarpımı vektörün eleman sayısına eşit olmak zorunda. Şimdi ben bu örneği satır satır açıklayarak çözeceğim .
Matlab için çözümü (ben 10x10 luk bir matris için çözdüm bu soruyu)
Çözüm:
A=round(100*rand(1,100));
x=1;
B=[];
for i=1:10
for j=1:10
B(i,j)=A(x);
x=x+1;
end
end
disp(B);
A=round(100*rand(1,100)); burada 100 elemanlı bir vektör oluşturduk.
x=1; vektörün elemanlarını dolaşacak değişkenin ilk değeri
B=[];Boş bir matris atadım
for i=1:10 satırları atayan döngü
for j=1:10 sutunları atayan döngü
B(i,j)=A(x); A vektörünün elamanlarını B nin i. satır ve j. sütünuna atayan kısım
x=x+1; ( ilk değerini 1 atadığım döngü elemanı, bu ifade satırxsutun kadar çalışacağı için
A vektörünün bütün elemanlarına ulaşabiliyorum. )
end
end
disp(B);
Faydalı olması ümidi ile ...
Daha fazlası için bana ulaşın YUNUS SAVAŞ
Yorumlar
Yorum Gönder