مثال : برنامه اي بنويسيد كه دو عدد را از ورودي دريافت و چنانچه عدد اول در بازه ۰ تا ۵ بود توان دوم عدد دوم را چاپ كند چنانچه ۶۸ بود حاصلضرب دو عدد را چاپ كند و در غير اينصورت مقادير مجاز را چاپ كند.

کد:
BEGIN WRITELN(’ENTER TWO NUMBER’); READLN(A,B); CASE A OF ۰..۵ :WRITELN(B*B); ۶۸:WRITELN(A*B) ELSE WRITELN(’ENTER ۰..۵ OR ۶۸′); END; END.
- معادل برنامه بالا با دستور If :

کد:
Begin Writeln(’enter ۲ number’); Readln(a,b); If (a>=۰)and(a<=5) then Writeln(b*b) Else If a=۶۸ then Writeln(a*b) Else Writeln('enter ۰..۵ or۶۸'); End.
تكليف : روشي براي تلفظ اعداد پيدا كنيد.
حلقه تكرار :
۱- تعداد معين
۲- تعداد معين
کد:
Do مقدار نهايي to { مقدار شروع=: متغير for downto begin ___ ___ ___ end;
توجه مهم : در برخي از حلقه ها دستورات داخل حلقه به متغير حلقه مرتبط مي باشند و در برخي موارد هيچگونه ارتباطي وجود ندارد.
حلقه for براي تعداد تكرار معين به كار ميرود
Downto : در مواردي به كار ميرود كه مقدار اوليه از مقدار نهايي بيشتر باشد
مثال : برنامه اي بنويسيد كه توان دوم اعداد ۱۰۰ تا ۲۰۰ را چاپ كند.

کد:
Begin For i:=۱۰۰ to ۲۰۰ do Begin Writeln(i*i); End; End.
نكته : اجازه نداريد مقدار متغير حلقه را در داخل بدنه عوض كنيد .
مثال : برنامه اي بنويسيد كه حاصلجمع اعداد ۱۰۰..۱ را چاپ كند.

کد:
Begin Sum:=۰; For i:=۱ to ۱۰ do Begin Sum:=sum+i End; Write(sum); End.
مثال : برنامه اي بنويسيد كه حاصلجمع مضارب ۵ بين ۰ تا ۱۰۰را به دست آورد.

کد:
Begin Sum:=۰; For I:=۱ to ۲۰ do Begin Sum:=sum+i*۵; End; Writeln(sum); End.
مثال : برنامه اي بنويسيد كه دو عدد را از ورودي دريافت و اعداد ما بين اين دو عدد را چاپ كند (a

کد:
Begin Writeln(’enter a,b’); Readln(a,b); For I:= a to b do Writeln(i); End.
مثال : برنامه اي بنويسيد كه با يك حلقه for اعداد بين۱۰۰..۱ و۷۳۸..۳۵۳و ۹۵۰..۹۴۰ را چاپ كند

کد:
Begin For i:=۱ to ۹۵۰ do Begin If ( i>=۱) and (i<=100) then Writeln(i); If (i>۳۵۳) and (i<=738) then Writeln(i); If (i>=۹۴۰) and (i<=950) then Writeln(i); End; End.
معادل برنامه بالا با استفاده از دستور case :

کد:
Begin For i:=۱ to ۹۵۰ do Case I of ۱..۱۰۰,۳۵۳..۷۳۸,۹۴۰..۹۵۰: writeln(i); end; end.
باقيمانده mod
مثال :
X mod y
مثال : برنامه اي بنويسيد كه مضارب ۷ بين ۱ تا ۱۰۰ را چاپ كند

کد:
Begin For i:= ۱ to ۱۰۰ do Begin If I mod ۷ = ۰ then Writeln(i); End; End.
مثال : برنامه اي بنويسيد كه تعداد مضارب ۵و۷ را در بازه ۲۳۱~۸۴۶ چاپ كند.

کد:
Begin K:=۰; C:=۰; For i:=۸۴۶ downto ۲۳۱ do Begin If I mod ۵ = ۰ then C:=c+۱; If I mod ۷ = ۰ then K:=k+۱; End; Writeln(’۵=’,c,’۷=’,k); End; End.
مثال : برنامه اي بنويسيد كه حقوق پايه وتعداد فرزندان ۱۰۰ كارگر را از ورودي دريافت و مبلغ حقوق آنها را بر اساس فرمول زير حساب كند۰
۱۰۰۰*تعداد فرزند + حقوق پايه = حقوق كل

کد:
Begin For i:=۱ to ۱۰۰ do Begin Writeln(’enter salary and number of children’); readln(salary,num); kol := salary + num * ۱۰۰۰; writeln(kol); end; end.
مثال : برنامه اي بنويسيد كه ۱۰۰ عدد را از ورودي دريافت و ميانگين و حاصلجمع آنها را به ما بدهد.

کد:
Begin Sum:=۰; For i:= ۱ to ۱۰۰ do Begin Writeln(’enter num’); Readln(num); Sum:=sum+num; End; Ave:=ave/۱۰۰; Writeln(sum,ave); End.
تعداد تكرار نامعين :
کد:
Do شرط  while
begin
___
___
___
end;
مثال : برنامه اي بنويسيد كه اعداد ۱۰۰..۱ را چاپ كند

کد:
Begin I:=۱; While i<=100 do Begin Write(i); I:=i+۱; End;
مثال : برنامه اي بنويسيد كه تعدادي اسم را از ورودي دريافت و به ما بگويد چند بار اسم ali تكرار شده است(آخرين اسم end است).

کد:
Var S:integer; St:string; Begin Read(st); While st<> ‘end’ do Begin If st=’ali’ then S:=s+۱; Read(st); End;write(s); End.
مثال : برنامه اي بنويسيد كه تعدادي عدد كه آخرين آنها صفر است را از ورودي دريافت و حاصلجمع آنها را چاپ كند.

کد:
Begin Readln(num); T:=۱; While num<>۰ do Begin Sum:=sum+num; Readln(num); T:=t+۱; End; Writeln(’s=’,s,’average’,s/t); End;
تكليف : براي دانش آموزان يك كلاس برنامه اي بنويسيد كه نام آنها به همراه تعداد نمرات و سپس نمرات آنها را به فرم زير از ورودي دريافت كند.تعداد دانش آموزان كلاس نامعين است ولي آخرين نفر نامش end است .برنامه ميبايستي پس از دريافت هر يك از اطلاعات پيامي به شكل زير چاپ كند.
Average: Sum: Ali Name:
۳
۱۸
۲۰
۱۳.۵

کد:
program test; var name:string[۱۰]; ave,sum,nomreh:real; num,i:integer; begin writeln(’enter name ‘ ); readln(name); while name <> ‘end’ do begin writeln(’enter num:’); readln(num); for i:=۱ to num do begin writeln(’enter nomreh: ‘); readln(nomreh); sum:=sum+nomreh; end; ave:=sum/num; writeln(’name:’,name,’sum:’,sum,’ave:’ ,ave); writeln(’enter name ‘); readln(name); end; end.
تكليف : ميخواهيم براي برنامه هاي خود يك منو تهيه كنيم اين منو شامل موارد زير است
۱) load
۲) save
۳) edit
۴) exit
please select a number :

کد:
program test; var num:integer; begin writeln(’ ۱) load’); writeln(’ ۲) save’); writeln(’ ۳) edit’); writeln(’ ۴) exit’); writeln(please select a number : ‘); readln(num); while num<>۴ do begin case num of ۱:writeln(’loading’); ۲:writeln(’saving’); ۳:writeln(’editing’); end; end; end