الدرس التاسع - اتخاذ القرار

اتخاذ القرار

if then else :

الجمله الشرطيه if تسمح لك بإتخاذ القرارات في برنامجك . المثال التالي يسأل المستخدم ان يدخل رقم و يخبر المستخدم اذا كان الرقم اكبر من 5 .

program Decisions;



var

   i: Integer;



begin

   Writeln('Enter a number');

   Readln(i);

   if i > 5 then

      Writeln('Greater than 5');

end.

و القرارات التي يمكنك اتخاذها مع الجمله الشرطيه if :

> اكبر من

 < اصغر من

 >=  اكبر من او يساوي

 <=  اصغر من او يساوي

 = يساوي

 <>  لا يساوي

المثال السابق كان يخبرنا فقط اذا كان الرقم اكبر من 5 , اذا كنا نريد ان يخبرنا انه ليس اكبر من 5 يجب ان نستخدم else .

program Decisions;



var

   i: Integer;



begin

   Writeln('Enter a number');

   Readln(i);

   if i > 5 then

      Writeln('Greater than 5')

   else

      Writeln('Not greater than 5');

end.

إذا كانت الحاله صحيحه (True) اختر الجزء الذي بعد then و اذا لم تكن صحيحه (False) اختر الجزء الذي بعد else . ذلك لان الحاله i > 5 تعتبر من النوع Boolean

program Decisions;



var

   i: Integer;

   b: Boolean;



begin

   Writeln('Enter a number');

   Readln(i);

   b := i > 5;

end.

اذا كنت تريد ان تستخدم اكثر من حاله واحده يجب عليك ربط حاله بالاخرى . لربط الحالات يمكنك استخدام AND او OR . اذا استخدمت AND يجب ان تكون الحالتين صحيحتين و اذا استخدمت OR يجب ان تكون حاله واحده او الحالتين صحيحتين .

program Decisions;



var

   i: Integer;



begin

   Writeln('Enter a number');

   Readln(i);

   if (i > 1) and (i < 100) then

      Writeln('The number is between 1 and 100');

end.

اذا كنت تريد كتابة امرين او اكثر بعد الجمله الشرطيه يجب استخدام begin و end; .

program Decisions;



var

   i: Integer;



begin

   Writeln('Enter a number');

   Readln(i);

   if i > 0 then

      begin

         Writeln('You entered ',i);

         Writeln('It is a positive number');

      end;

end.

كذلك يمكنك استخدام if داخل if

program Decisions;



var

   i: Integer;



begin

   Writeln('Enter a number');

   Readln(i);

   if i > 0 then

      Writeln('Positive')

   else

      if i < 0 then

         Writeln('Negative')

      else

         Writeln('Zero');

end.

 

Case :

الامر Case يشبه إلى حد ما if لكنه يقبل العديد من الحالات مره واحده

program Decisions;



uses

   crt;



var

   Choice: Char;



begin

   Writeln('Which on of these do you like?');

   Writeln('a - Apple:');

   Writeln('b - Banana:');

   Writeln('c - Carrot:');

   Choice := ReadKey;

   case Choice of

      'a': Writeln('You like apples');

      'b': Writeln('You like bananas');

      'c': Writeln('You like carrots');

   else;

      Writeln('You made an invalid choice');

   end;

end.