qo‘shimcha o‘zgaruvchi kiritildi, shu bois bo‘ldi.
PASKAL algoritmik tilidagi dastur matni:
CHiziqli hisoblash jarayonlarini dasturlash
Program Chizig( input, output );
var
a,b,c,p,s,ha,hb,hc:real;
begin
Write('a='); Readln(a);
Write('b='); Readln(b);
write('c='); Readln(c);
P:=(a+b+c)/2;
S:=2*sqrt(p*(p-a)*(p-b)*(p-c));
ha:=S/a; hb:=S/b; hc:=S/c;
Writeln('ha=',ha);
Writeln('hb=',hb);
Writeln('hc=',hc);
end.
10.5. SHartli o‘tish operatori. Operatorning umumiy ko‘rinishi va bajarilishi tartibi
SHartli o‘tish operatori. Bu operator Paskal tilida tuzilgan dasturda qo‘yilgan shartning bajarilishi yoki bajarilmasligiga ko‘ra, boshqaruvni berilgan operatorlardan bittasini bajarish uchun o‘tkazadi. Paskal tilida shartli operatorning ikki ko‘rinishi mavjud, ya’ni to‘liq va qisqartirilgan ko‘rinishlari.
To‘lik shartli o‘tish operatorining umumiy ko‘rinishi quyidagicha:
if B then S1 else S2
bunda if (agar), then ( u holda), else (aks holda) xizmatchi so‘zlardir. V-mantiqiy ifoda; S1 va S2 lar operatorlar. Operator S1 va operator S2 lar sodda yoki murakkab operatorlar. Operator S1 va operator S2 sifatida yana shartli operator qo‘llanilishi ham mumkin. SHartli operator murakkab operator hisoblanadi, ya’ni uning tarkibida boshqa operatorlar ham qatnashishi mumkin.
SHartli operator quyidagicha bajariladi:
Agar mantiqiy ifoda chin qiymat qabul qilsa, u holda operator S1 bajariladi, aks holda, ya’ni mantiqiy ifoda yolg‘on qiymat qabul qilsa, operator S2 bajariladi.
Mantiqiy ifoda bir nechta shartga bog‘liq bo‘lsa, u holda bu shartlarni bir-biriga bog‘lash uchun mantiqiy amallar (and,or,not) dan foydalaniladi.
Masalan: if (x<=0) and (a>=0) then S:=S+i else S:=S+Sgr(i);
Qisqartirilgan shartli operator quyidagicha yoziladi:
if mantiqiy ifoda then operator 1;
Bu operator quyidagicha bajariladi: agar mantiqiy ifoda “chin” qiymat qabul qilsa, operator1 bajariladi, aks holda, ya’ni mantiqiy ifoda yolg‘on qiymat qabul qilsa, bu operatordan keyingi operator bajariladi.
Masalan:
if x<5 then y:=y+1;
z:=sl+5;
Bu operatorlar guruhi quyidagicha bajariladi: x<5 shart bajarilsa, u holda y:=y+x operatori bajariladi va undan keyin z:=sl+5 ta’minlash operatori bajariladi, aks holda, ya’ni x<5 shart bajarilmasa birdan z:=sl+5 ta’minlash operatori bajariladi.
SHartli operatorda tarkibiy operator ham qo‘llaniladi. Bu holda then va else so‘zlaridan keyin tarkibiy operator bo‘ladi.
if mantiqiy ifoda then
begin
operator1;
operator2;
- - - - -
operatorn;
end;
else
begin
operator1;
operator2;
------
operatorn;
end;
Bu erda else xizmatchi so‘zidan oldin nuqtali vergul quyilmaydi.
Masalan, agar x>y bo‘lsa z1=5, z2=x ni, aks holda ya’ni x£y bo‘lsa, p1=2*x; p2=5*y; p3=x*y ni hisoblash kerak bo‘lsa, u holda shartli operator quyidagi ko‘rinishda bo‘ladi:
if x>y then
begin
z1:=5;
z2:=x;
end
else
begin
p1:=2*x;
p2:=5*y;
p3:=x*y;
end;
Bu erda 2 ta tarkibiy operator qo‘llanilgan. Ba’zan bitta tarkibiy operator, boshqasi sodda operator bo‘lishi ham mumkin. SHuni unutmaslik kerakki, then va else so‘zlaridan keyin tarkibiy operatorlar albatta begin-end o‘rtasiga yozilishi shart.
SHartli operator ichma-ich joylashgan ham bo‘lishi mumkin:
If mantiqiy ifoda then operator1 else if mantiqiy ifoda then operator2 else operator3;
Bu erda operator1, operator2 va operator3 lar sodda va murakkab operatorlar bo‘lishi mumkin. Bu operatorning bajarilishi quyidagicha: agar mantiqiy ifoda chin qiymat qabul qilsa operator1, aks holda, ichki shartli operator bajariladi. Unda mantiqiy ifoda chin qiymat qabul qilsa, operator2, aks holda operator3 bajariladi.
Misol. Berilgan a,v,s sonlaridan eng kattasini topish dasturini tuzing.
program MAX(input,output);
var a,b,c,z,y:real;
begin
read(a,b,c);
begin if a>=b then Z:=a else Z:=b end;
begin if Z>=c then y:=Z else y:=c end;
writeln('katta son=',y);
end.
Misol uchun agar berilgan sonlar a=-5; b=6 va c=0.5 ga teng bo‘lsa, u holda hisoblash natijasi quyidagicha bo‘ladi:
katta son = 6 .
5>
Do'stlaringiz bilan baham: |