Sık kullanılan matematiksel fonksiyonlar ile örnekler.
Bu yazıda, MATLAB dili kullanılarak geliştirilmiş çeşitli matematiksel uygulama örneklerini inceleyeceğiz.
1.Örnek:
Aşağıdaki denklemi matlab koduna gönüştür.

|
1 2 3 4 |
>> s = 2; >> C = (s^3 - 2*s^2 + 1) / (s^2 + s - 5) C = 1 |
2. Örnek:
Aşağıdaki denklemleri matlab koduna gönüştür.

|
1 2 3 4 5 6 7 8 9 10 11 12 |
>> y = ( (17)^(1/3) ) / sqrt(5) y = 1.1499 >> x = exp((y^6)/4) / sqrt(log(pi)) x = 1.6660 >> z = 5*log10(x^3) z = 3.3251 >> t = tan(exp((2/3)*z)) t = -0.2529 |
örnek3:
![]()
kök bulma formül : x = -(b/2a) +- (1/2a)*sqrt(b^2-4ac)
|
1 2 3 4 5 6 7 8 9 10 |
>> % a,b ve c değerlerini belirle >> a = 2; >> b = -1; >> c = 3; >> x1 = -(b/(2*a)) + (1/(2*a))*sqrt(b^2-4*a*c) x1 = 0.2500 + 1.1990i >> x2 = -(b/(2*a)) - (1/(2*a))*sqrt(b^2-4*a*c) x2 = 0.2500 - 1.1990i |
4. örnek:

|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
>> % Verilen değerler f = 50e6; % Frekans (Hz) L = 0.2e-3; % Endüktans (H) C = 0.25e-9; % Kapasitans (F) R = 0.33e3; % Direnç (Ohm) Vo = 5e-3; % Giriş gerilimi (V) % Açısal frekans (w = 2 * pi * f) w = 2 * pi * f; % Payda hesaplaması denom = sqrt(R^2 + (w*L - 1/(w*C))^2); % VR hesaplaması VR = (R / denom) * Vo; % Sonucu ekrana yazdırma fprintf('VR = %.6f V (%.6f mV)\n', VR, VR * 1e3); VR = 0.000026 V (0.026266 mV) >> % Verilen değerler f = 50e6; % Frekans (Hz) L = 0.2e-3; % Endüktans (H) C = 0.25e-9; % Kapasitans (F) R = 0.33e3; % Direnç (Ohm) Vo = 5e-3; % Giriş gerilimi (V) % Açısal frekans (w = 2 * pi * f) w = 2 * pi * f; % VR hesaplaması VR = (R / sqrt(R^2 + (w*L - 1/(w*C))^2)) * Vo VR = 2.6266e-05 |
| numeric format | kesir | Virgülden sonraki hane sayısı |
| short | 83.3333 | 4 (toplam sayı 4) |
| long | 83.333333333333329 | 15 |
| short e | 8.3333e+001 | 4 (toplam sayı 5) |
| long e | 8.33333333333333e+001 | 15 |
| short g | 83.333 | short veya short e den daha kısa bir gösterim, toplam sayı 5 |
| long g | 83.3333333333333 | long veya long e den daha kısa bir gösterim, toplam sayı 15 |
| hex | 4054d55555555555 | Hexadecimal format |
| bank | 83.33 | 2 |
Compact komutu : Ekran satırları arsındaki mesafeyi kısaltır.
disp(değişken) : İçerisine yazılan değişken değerini ekrana yazar.
disp(“herhangibirşey”) : tırnak içerisine yazılan ifade ekrana bastırılır.
fprintf(format, değerler)
format: Yazdırılacak metnin biçimini belirler.
değerler: Biçimlendirme içinde yerine konacak değişkenler.
MATLAB’da fprintf komutu ile kullanılabilen tüm format belirteçlerini aşağıda detaylı bir şekilde listeledim:
Temel Format Belirteçleri
Belirteç |
Açıklama |
Örnek Kullanım |
Çıktı |
|---|---|---|---|
|
Tam sayı (integer) |
|
|
|
Ondalıklı sayı (float) |
|
|
|
Bilimsel gösterim (scientific notation) |
|
|
|
En kısa gösterim (
|
|
|
|
Sekizlik (octal) sayı |
|
|
|
Onaltılık (hexadecimal) sayı |
|
|
|
Karakter dizisi (string) |
|
|
|
Tek karakter (char) |
|
|
|
Yüzde işareti (%) yazdırır |
|
|
Gelişmiş Formatlama Seçenekleri
Biçim |
Açıklama |
Örnek |
Çıktı |
|---|---|---|---|
|
Ondalıklı sayıyı
|
|
|
|
Pozitif sayılara
|
|
|
|
Pozitif sayılar için boşluk bırakır |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Özel Kaçış Karakterleri
Kaçış Karakteri |
Açıklama |
Örnek Kullanım |
Çıktı |
|---|---|---|---|
|
Yeni satır (newline) |
|
|
|
Sekme (tab) |
|
|
|
Ters bölü (backslash) |
|
|
|
Tek tırnak (apostrof) |
|
|
|
Çift tırnak (quote) |
|
|
örnek:
|
1 2 3 4 5 6 |
Ad = "Abdulsamet"; Soyad = "Tasoglu"; Numara = "371"; Ders = "Matematik"; Not = 88.75; fprintf("Ad :%s \nSoyad:%s \nNumara:%s \nDers:%s \nNot: %.2f \n",Ad,Soyad,Numara,Ders,Not); |
Komplek sayılar kullanıldığında fprintf yerine disp komutu kullanımı daha uygundur.
fprintf() kullanımları:
%a.bf ; f ifadesi sayının sabit olduğu anlamına gelir.
a: Sayının toplam genişliğini belirten bir değeri ifade eder (isteğe bağlıdır).
b: noktanın sağ tarfı yani ondalık basamak sayısını belirler.
|
1 2 3 |
>> sicaklik = 1533.876321; >> fprintf("Sicaklik = %4.2f derece\n",sicaklik); Sicaklik = 1533.88 derece |
%a.be ; e ifadesi sayının üstel olduğu anlamına gelir.
a: Sayının toplam genişliğini belirten bir değeri ifade eder (isteğe bağlıdır).
b: noktanın sağ tarfı yani ondalık basamak sayısını belirler.
|
1 2 3 4 |
>> fprintf("Sicaklik = %8.3e derece\n",sicaklik); Sicaklik = 1.534e+03 derece >> fprintf("Sicaklik = %8.5e derece\n",sicaklik); Sicaklik = 1.53388e+03 derece |
Farklı bir örnek:
Kodun Amacı ve İşlevi
Bu MATLAB kodu, 1×6 boyutundaki bir vektörü 3×2 boyutunda bir matrise dönüştürüp, bu matrisin elemanlarını satır-sütun formatında ekrana yazdırır.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
I = [1 2 4 8 5 3]; s = 0; for k=1:3 for m=1:2 s=s+1; son(k,m) = I(s); end end for d=1:3 syc = 0; for k=1:2 syc = syc+1; sn = son(d,k); if syc == 2 fprintf(" %dL%g = %g\n",d,k,sn); else fprintf(" %dL%g = %g\n",d,k,sn); end end end ----- Çıktı ------ 1L1 = 1 1L2 = 2 2L1 = 4 2L2 = 8 3L1 = 5 3L2 = 3 |
Dizi Örneği;
|
1 2 3 4 5 6 |
>> A1 = [9.9, 9900]; >> A2 = [8.8, 7.7; 8800, 7700]; % 2x2 lik matris >> fprintf("X degeri %4.2f metre veya %8.3f mm \n",A1,A2); X degeri 9.90 metre veya 9900.000 mm X degeri 8.80 metre veya 8800.000 mm X degeri 7.70 metre veya 7700.000 mm |
Neden 3 satır çıktı var?
fprintf, verilen matrisleri sütun bazında işler.A1‘den ilk eleman (9.9) ve ikinci eleman (9900) alınıyor.A2‘nin ilk sütunundaki (8.8, 8800) ve ikinci sütunundaki (7.7, 7700) elemanları sırayla işleniyor.- Bu yüzden 3 satır çıktı oluşuyor.
Hatırlatma:
|
1 |
x = 0:.1:1; |
x değişkeni 0’dan başlasın 0.1 artarak 1’e kadar gitsin.
Aşağıdaki kod 0.1 , 0.2 ,0.3 ….. 0.9 ve 1 sayılarını tek tek e üzeri olarak yazıyor arından bunu bir matris haline getiriyor.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
x = 0:.1:1; A = [x; exp(x)]; fprintf("%5.1f - %12f\n",A); 0.0 - 1.000000 0.1 - 1.105171 0.2 - 1.221403 0.3 - 1.349859 0.4 - 1.491825 0.5 - 1.648721 0.6 - 1.822119 0.7 - 2.013753 0.8 - 2.225541 0.9 - 2.459603 1.0 - 2.718282 |

