x 0 dan boshlab h qadam bilan oxirgi
qiymati xn gacha bo’lgan qiymatlarida bajariladi. Agar qadam
h berilmasa,
tizim uni avtomatik tarzda
1 deb hisoblaydi.
Misollar:
for i=1:10 for j=1:10
208
a(i,j)=1/(i+j-1); end end Bu dastur ishlashi natijasida (10x10) o’lchovli Gilbert matritsasi hosil
qilinadi. for i=0:2:10
y(i)=x(i)*sin(x(i))+1/(x(i)+1);
end
Sikl operatori
while…end ning umumiy ko’rinishi quyidagicha bo’lib, operator
qobig’idagi komandalar ketma-ketlgi noma’lum sonda (shart bajarilguncha)
qaytariladi:
while {operatorlar} end Bunda {operatorlar} ketma-ketligi “yolg’on” qiymat qabul qilguncha
takror bajarilaveradi, xuddi shartli operator if dagi kabi solishtirish amallari
orqali aniqlangan bo’lishi kerak.
Masalan, quyidagicha
i=2; x(1)=10; x(2)=11; while abs(x(i)-x(i-1))>=0.001 i=i+1 x(i)=(1000-x(i-1))^(1/3); end ketma-ketlikda yozilgan kod
tenglamaning 0.0001 aniqlikdagi
taqribiy
yechimini topib beradi. Bunda,
while… end operator qobig’idagi
hisoblashlar necha marta bajarilishi noma’lum.
x vektorning yig’indisi a sonidan oshmaydigan birinchisidan boshlab ketma-
ket kelgan barcha koordinatalarini aniqlasin. Bu masalani hal qiluvchi
komandalar ketma-ketligi quyidagicha bo’ladi:
>>x=a; k=0; s=0;
209
while s<=a k=k+1; s=s+x(k); y(k)=x(k); end >>y Yuqoridagi 1-misol vazifasini if…end operatori yordamida bajarish mumkin. U
holda quyidagi fayl funksiyani ishlatish mumkin:
8.4.2-
rasm .