Ana içeriğe atla

Matlab Fprintf ile Dosyaya Veri Yazma İşlemleri

    1- fprintf komutu ile bir dosyaya ya da ekrana verileri formatlı olarak yazdırabiliriz. İlk örnegimiz de veriyi dosyaya alt alta yazdırma işlemi yapalım.

clc
clear all
dosya=fopen('sayilar.txt','w');
for i=1:20
fprintf(dosya, '%d \n',i);
% %d ile dosya içine tamsayı yazacagımızı belitiriz
% \n ile yazma işleminden sonra alt 
% satıra geçecegimizi belirtiriz
end
fclose(dosya);

'bitti'

    Yukarıda ki kodların sayilar.txt dosyası içinde alt alta nasıl geldiklerini gözlemleyelim.


    5'inci veriyide yazdıktan sonra \n ile karşılaşıyor ve bir alt satıra geçiliyor.
    
    2 - Bu örnekte verimizi ekrana formatlı olarak yazdıralım.

A1 = [9.9, 9900];
A2 = [8.8,  7.7 ; ...
      8800, 7700];
formatSpec = 'X is %4.2f meters or %8.3f mm\n';
fprintf(formatSpec,A1,A2)

    Yukarıdaki kodlar matris üzerinde ki 2 sayı grubunu bir cümlenin içine yerleştirerek ekrana çıktı oluşturmamızı saglamaktadır. %4.2f komutu: toplamda 4 basamak, virgülden sonrası 2 basamak olacak şekilde ondalıklı sayıyı ekrana göstermektedir. %8.3f 'de aynı şekilde, toplamda 8 basamak olan sayının virgülden sonra 3 basamağını alarak ekrana yazdırma işlemi yapmaktadır. Ekran çıktımız ise;









    3 - Matris durumunda ki verimizi dosyaya yan yana ve alt alta yazdıralım.

clc
clear all
dosya=fopen('sayilar.dat','w');

matrix=ones(5,5);
%5x5'lik birim matris oluşturduk

for i=1:5
    for j=1:5
        if j<5
            fprintf(dosya, '%d',matrix(i,j));
            %4'e kadar olan sütunları yaz
        else
            fprintf(dosya, '%d \n',matrix(i,j));
            %5'inci sütunda bir alt satıra geç
        end
    end
end
fclose(dosya);

'bitti'

    Ekran çıktımız:

        
Ekran çıktımız görüldügü gibi 5x5 satır ve sütundan oluşmaktadır.

Yorumlar

Bu blogdaki popüler yayınlar

Matlab Operatörler

Matematiksel operatörler: +  Toplama –  Çıkarma *  Çarpma /  Bölme ^  Üst alma .* Elemanter çarpım ./  Elemanter bölme .^  Elemanter üst alma a+b  Boyutları aynı olan a ve b matrisini toplar. a-b  Boyutları aynı olan a ve b matrislerinin farkını alır. a*b  Sütun sayısı m olan a matrisiyle satır sayısı m olan b matrisini çarpar. a/b  b düzenli kare bir matrisse (determinantı sıfırdan farklıysa), aynı boyutlu a matrisiyle; a*inv(b)işlemini yapar. a.*b  Boyutları aynı olan a ve b matrislerinin elemanlarını karşılıklı olarak çarpar. a./b  Boyutları aynı olan a ve b matrislerinin elemanlarını karşılıklı oranlar. sqrt  Kök alma abs  Mutlak değer rats  Kesirli gösterim Mantıksal operatörler: &  Ve |  Veya ~  Değil /  Bölme Karar operatörleri: >  Büyüktür <  Küçüktür >=  Büyük eşittir <=  Küçük eşittir ==  Eşittir ~=  Eşit değildir

Matlab Random Sayı Üretme

randi() Matlab üzerinde random sayı üretmek için en iyi komut randi() 'dir. rand() fonksiyonu ya da komutu ile de random sayı üretilebilir. Bu yazıda randi() komutunu anlatacağım ve yazının sonundaki link ile birbirinden farklı en tane sayı üretme algoritmasını paylaşacağım. Önemli: Bu sayfadaki matlab fonksiyonları ve açıklamaları matlabın orjinal sayfasından edinilmiştir. https://www.mathworks.com/help/matlab/ref/randi.html Örnek: randi(10,5) > 1'den 10'a kadar 5x5'lik bir random sayı matrisi üret. r = randi(10,5) %matlab komutu r = 5×5 9 1 2 2 7 10 3 10 5 1 2 6 10 10 9 10 10 5 8 10 7 10 9 10 7 Örnek:  randi ([-5,5],10,1) > -5'den başlayıp 5'e kadar 10 satır ve 1 sütuna sahip 10x1'lik bir randım sayı matrisi oluturur. "1" değiştirilerek başka boyutlarda da matris oluşturulabilir. r = randi([-5,