[]
If - For Loop Sorusu
..
..
for (i=0:theta_min_2) {
kx1 = 2*pi*n*f1/c*sin(theta_min_1/180*pi);
kx2 = 2*pi*n*f2/c*sin(theta_min_2/180*pi);
kx = linspace(kx1,kx2,nKPts);
theta_maximum = 180/pi*asin(kx*c/2/pi/n/f1);
### buraya bir if loop lazim sanki ###
..
}
bu yukardaki kod parcasinda once kx1 ve kx2'yi, sonra da bunlari kullanaraktan kx vektorunu tanimliyorum. sonra da bu kx'i kullanaraktan theta_maximum'u tanimliyorum. kx ve theta_maximum (nKpts x 1)'lik vektorler. bu asamadan sonra istedigim theta_maximum'un tum elemanlarina baksin ve eger theta_maximum'un tum elemanlarinin absolute value'su (abs) 89'dan kucuk ise benim verecegim bi sonraki asamayi yapsin (bu bi sonraki asamayi yazarim). bana sadece bu theta_maximum'un tum elemanlarini kontrol edecek olan if-for loop gerekli. nasil yazmak gerekiyor?
tesekkurler simdiden
..
for (i=0:theta_min_2) {
kx1 = 2*pi*n*f1/c*sin(theta_min_1/180*pi);
kx2 = 2*pi*n*f2/c*sin(theta_min_2/180*pi);
kx = linspace(kx1,kx2,nKPts);
theta_maximum = 180/pi*asin(kx*c/2/pi/n/f1);
### buraya bir if loop lazim sanki ###
..
}
bu yukardaki kod parcasinda once kx1 ve kx2'yi, sonra da bunlari kullanaraktan kx vektorunu tanimliyorum. sonra da bu kx'i kullanaraktan theta_maximum'u tanimliyorum. kx ve theta_maximum (nKpts x 1)'lik vektorler. bu asamadan sonra istedigim theta_maximum'un tum elemanlarina baksin ve eger theta_maximum'un tum elemanlarinin absolute value'su (abs) 89'dan kucuk ise benim verecegim bi sonraki asamayi yapsin (bu bi sonraki asamayi yazarim). bana sadece bu theta_maximum'un tum elemanlarini kontrol edecek olan if-for loop gerekli. nasil yazmak gerekiyor?
tesekkurler simdiden
for i=0:nKpts
if abs(theta_maximum(i))<89
koşullar
end
if abs(theta_maximum(i))<89
koşullar
end
- onexey (21.05.13 18:41:17)
@onexey: evet de bu tek tek theta_maximum elemanlarina bakip, i elemani 89'dan kucukse her seferinde kodu calistirmiyor mu? benim istedigim hepsine baksin, eger bi tanesi bile 89'dan buyuk ise calistirmasin, hepsi 89'dan kucuk ise de bi kere calistirsin. once hepsini bi test etsin yani..
- gerard (21.05.13 18:45:41 ~ 18:46:15)
haklısın. şu şekilde olması lazım.
for i=0:nKpts
if abs(theta_maximum(i))>=89
break
end
koşullar
end
for i=0:nKpts
if abs(theta_maximum(i))>=89
break
end
koşullar
end
- onexey (21.05.13 18:51:01)
1