الدرس التاسع - اتخاذ القرار
اتخاذ القرار
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.