linkedin facebook linkedin facebook nod32

Paskalda shartli va shartsiz o‘tish operatorlari

Muallif: Mengliyev Sh.

Qo`shilgan sana: 2015-01-13

Paskalda shartli va shartsiz o‘tish operatorlari

1.Kirish
         SHunday masalalar borki ularning algoritmi to‘g‘ridan to‘g‘ri ketma-ket ravishda bajarilmaydi. Bunda shartning berilishiga qarab u yoki boshqa hisoblashlar bajariladi. Bunday hisoblash jarayonlarni dasturlash Paskal tilida shartli va shartsiz o‘tish operatorlari yordamida amalga oshiriladi. Tarmoqlanuvchi hisoblash jarayoni tarkibida yana tarmoqlanishlar bo‘lishi mumkin. Bunday jarayonlarga murakkab tarmoqlanuvchi hisoblash jarayonlari deyiladi.  

2.SHartli o‘tish operatori
Pascal tilida shartli o‘tish operatorining ikki xil ko‘rinishi mavjud: to‘liq va qisqa.
To‘liq ko‘rinish:
     If <shart> then Begin
           <shart rost bo‘lganda bajariladigan operatorlar>
                    End
               Else
                        Begin   
           <shart yolg‘on bo‘lganda bajariladigan operatorlar>
                         End;    
Qisqa ko‘rinish:
     If <shart> then Begin
           <shart rost bo‘lganda bajariladigan operatorlar>
                    End;
Bu erda IF -agar; then -u holda; else -aks holda  ma’nosini bildiruvchi xizmatchi (kalit) so‘zlar.
Birinchi ko‘rinishdagi shartli operatorda, agar shart bajarilsa birinchi Begin va end ichidagi operatorlar ketma–ket bajariladi, aks holda ikkinchi Begin va end ichidagi operatorlar ketma-ket bajariladi.
Ikkinchi ko‘rinishdagi shartli operator quyidagicha ishlaydi. Agar berilgan shart bajarilsa Begin va end ichidagi operatorlar ketma-ket bajariladi, aks holda ular bajarilmaydi.
Agar bajariluvchi operatorlar soni bitta bo‘lsa Begin va End so‘zlarini yozish shart emas.
Misollar:
1)  If A>0 Then Begin C:=1; B:=C+1; End
Else Begin C:=0; B:=4; End;
2)  If D=A Then D:=A Else A:=D;
Har bir shartli o‘tish operatori ichida boshqa ichki shartli operatorlar joylashishi ham mumkin, masalan          If  b1 then a1 else If b2 then a2 Else a3;
Misollar.
A:=0.5; B:=-1.7; IF A<B THEN A:=B ELSE B:=A;
Javob: 0.5<-1.7 yolg‘on bo‘lganligi sababli B:=A operator bajariladi, va bunda A=0,5 va B=0,5 ekenligi kelib chiqadi.
A:=0.1; B:=0.1; C:=0.5; D:=0;
IF (A<B) OR (A>C) THEN D:=B+C ELSE
IF B=A THEN BEGIN D:=C; C:=A; END;
Javob: (0.1<0.1)yoki(0.1>0.5) bu mantiqiy ifoda yolg‘on bo‘lganligi sababli B=A shart tekshiriladi. Bu shart chin  bo‘lganligi sabab D=0,5 ga, S=0,1 qiymatlarga teng ekenligi kelib chiqadi.

3.SHartsiz o‘tish va tanlash operatorlari
Dasturda shunday holatlar bo‘ladiki operatorlarning bajarilish shartiga qarab dasturning u yoki bu qismiga to‘g‘ridan-to‘g‘ri o‘tishga to‘g‘ri keladi. Bunday holatlarda shartsiz o‘tish operatoridan foydalanish mumkin.
SHartsiz o‘tish operatorining ko‘rinishi quyidagicha:
Goto n;
Bu erda n -belgi(metka) bo‘lib identifikator yoki butun son bo‘lishi mumkin. Goto - o‘tish ma’nosini bildiradi.

  1. belgi dasturning bosh qismida Label so‘zi yordamida e’lon qilingan bo‘lishi shart. n boshqarilish uzatiladigan joyga n: shaklida qo‘yiladi.

Misol:
.............
Goto L2;
............
L2: C:=x*y;
............
Ko‘p hollarda baror bir parametrning qiymatiga qarab kerakli operatorlarni bajarishga to‘g‘ri keladi. Bunday hollarda tanlash operatorini ishlatgan qulay. Tanlash operatori ko‘rinishi quyidagicha bo‘ladi:
Case s of
1: A1;
2: A2;
. . . . . .
n: An;
Else Begin
<B1,B2,..Bn>
End;
End;
Bu erda Case -xizmatchi so‘z bo‘lib tanlash ma’nosini beradi; of -«dan» ma’nosini beradi; s-operator selektori; 1,2,..n-operator belgilari; A1,A2,...An va B1,B2,...Bn-operatorlar.
Case operatori tarmoqlanish jarayonida berilgan bir necha operatoridan birini tanlash yo‘li bilan amalga oshiradi. Opreatorlar ketma-ketligini tanlash operator selektorining qiymatiga qarab aniqlanadi. Operator selektori haqiqiy bo‘lmagan o‘zgaruvchi yoki ifoda bo‘lishi mumkin. Agar operator selektori qiymati operator belgilari o‘zgarmas qiymatiga teng bo‘lmasa B1,B2,...Bn-operatorlari ketma-ket bajariladi. SHartli o‘tish operatorining quyidagi ko‘rinishi
If B Then A1 Else A2;
tanlash operatorining quyidagi operatoriga ekvivalentdir.
Case B of
True: A1;
False: A2;
End;
  Misol:  ax2+bx+c=0 kvadrat tenglamaning ildizlarini topish dasturi tuzilsin.
Program kvt;
Var a,b,c,x1,x2,d:Real;
label L1;
Begin
Writeln('Kvadrat tenglama koeff.kiriting:');
Write('a='); Readln(a); Write('b='); Readln(b); Write('c='); Readln(c);
If a=0 Then begin x1:=c/b; Write('Javob bitta x=',x1); Goto L1; end;
d:=b*b-4*a*c;
If d<0 Then Write ('Haqiqiy echim yo`q')
Else  begin x1:=(-b+Sqrt(d))/2/a; x2:=(-b-Sqrt(d))/2/a;
Writeln('x1=',x1); Write('x2=',x2); Readln;
End;
L1:
End.

4050 marta o`qildi.

Foydalanuvchi ismi: 101-Humoyiddin
Qo`shilgan sana: 2015-04-08

yaxshi

Foydalanuvchi ismi: rivoj
Qo`shilgan sana: 2015-04-16

yaxshi

Foydalanuvchi ismi: Norqulov 203
Qo`shilgan sana: 2015-04-16

ajoyib

Foydalanuvchi ismi: Shahzod
Qo`shilgan sana: 2015-10-25

Iltimos,yangicha narsalar kiriting

Parol:
Eslab qolish.


Ro`yhatdan o`tish

testing

+998915878681

Siz o`z maxsulotingizni 3D reklama ko`rinishda bo`lishini xohlaysizmi? Unda xamkorlik qilamiz.

3D Reklama


Рейтинг@Mail.ru
Рейтинг@Mail.ru

Besucherzahler
счетчик посещений