MATLAB İF YAPISI
/ elseif / else if
Koşul doğru ise ifadeleri çalıştırmak
Sözdizimi
Tanımlama
if ifade , ifadeleri, son bir ifade olarak değerlendirilir ve ifade doğru olduğunda tabloların bir grup yürütür.
Başka elseif ve isteğe bağlıdır, ve if blok önceki ifadeler yanlış sadece cümleleri. Bir if bloğu birden fazla elseif ifadeleri içerebilir.
Sonuç boş olmayan ve tüm sıfırdan farklı elemanları (mantıksal veya gerçek sayısal) içerdiğinde bir değerlendirilir ifade doğrudur. Aksi takdirde, ifade yanlıştır.
İfadeler ilişkisel operatörler (örneğin <veya == gibi) ve mantıksal operatörler (| | veya ~ gibi &&, gibi) içerebilir. MATLAB ® bağlı kalarak, soldan sağa bileşik ifadeler değerlendirir operatör öncelik kuralları.
Örnekler
Kendi endeksleri bağlı bir matris değerleri atayın:
% Bir matris preallocate nrows = 10; ncols = 10; myData = olanlar (nrows, ncols); Matris ile% Döngü nrows: r = 1 için ncols: C = 1 eğer r == c myData (R, C) = 2; elseif abs (r - c) == 1 myData (R, C) = -1; başka myData (R, C) = 0; son son son
Komut satırı girişi yanıt. Giriş dizesi bir karakter daha fazla olabilir, çünkü, eşitlik için test etmek için == daha strcmp yerine kullanın:
= input ('? bir yankı görmek ister misiniz (e / h):', 's') cevap; eğer strcmp (, 'y' cevap) disp (cevap) son
Belirli bir sınırdan daha büyük olan bir vektör değerlerin endeksleri bul:
A = rand (1,10); = .75 sınırı; B = (A> sınırı);% B mantıksal değerler bir vektör varsa (B) fprintf ('değerlerin Endeksleri>% 4.2f: \ n', sınırı); disp (bulmak (B)) başka disp ('Tüm değerler limitinin altındadır.') son
Onlar aynı boyutta olduğunda iki değişken bağlamak. Değişkenler farklı boyutlara sahip bir hata önlemek için, ISEQUAL yerine ==operatörünü kullanarak boyutları karşılaştırma:
A = olanlar (2,3);% İki boyutlu bir dizi B = rand (3,4,5);% Üç boyutlu bir dizi eğer ISEQUAL (boyut (A), boyut (B)) C = [A, B]; başka uyarı ('A ve B aynı boyutta değildir.'); C = []; son
Hata veya uyarı mesajları önlemek için kısa devre yararlanın:
x = 42; ('myfunction.m') && (işlevim (x)> = pi) varsa disp ('Durum doğrudur') son