العمليات المنطقية

سنتطرق إلى العمليات المنطقية  التي هي أيضا بدورها تلعب دور مهم وكبير في البرمجة ، سوف نقوم بشرح العمليات ، رموزها ، طرق مختصرة لإجراء العمليات وأيضاً سنتعلم كيفية كتابة التعليقات.

أولا :الرموز المنطقية  :-

في البداية نحب أن نقوم بتعريف العمليات الأساسية وهي : اصغر ، اكبر ، النفي ، المساواة .

العملية

الرمز

اصغر

>

اكبر

<

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

<=

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

>=

يساوي

==

علامة النفي

!

لا يساوي

!=

أمثلة :

المثال

ناتج التنفيذ

هنا نطلب التحقق بين القيمتين number1 و number2 والناتج العائد لنا هو منطقي true / false .

var number1:Int=13
var number2:Int=20
println(number1<number2)

true

عرفنا متغير منطقي يحمل قيمة false ولكن نلاحظ وقت الطباعة نفينا القيمة أي انه سيطبع العكس.

var isReal:Boolean=false
println ("Ahmed loves Kotlin :"+ !isReal)

Ahmed loves Kotlin :true


ثانيا: البوابات المنطقية “المقارنة “:-

البوابات المنطقية في البرمجة هي : AND , OR ,NOT .

بوابة AND :-

لو كان لدي قيمة اريد التحقق منها ولدي قيمة أخرى وأريد التحقق منها أيضا ،نستطيع فعل ذلك عن طريق بوابة AND ولكن يجب ان يكون ناتجهما جميعا متحقق أي انه لا يكون الشرط الأول صحيحا والأخر خطاء.

لذلك نستخدمها كثيرا في التحقق من اسم المستخدم وكلمة المرور عندما يقوم المستخدم من ادخال المعرف الخاص به وكلمة المرور الخاصة أيضا به وكانتا كلتاهما صحيحتان حينها يكون الناتج لدينا true بداخل البرنامج وناتج التنفيذ هو الدخول إلى البرنامج ولكن في حال انه ادخل المعرف الخاص به بشكل صحيح واخطاء في كتابة كلمة المرور فالناتج بالداخل سيكون خطاء وناتج التنفيذ الذي نراه لن يسمح لي بدخول البرنامج .
تمثل برمجياً بهذا الرمز (&&) .

وفي المثال نجد أنه لدي قيمتين اريد التحقق منهما كلهما بأنهما يعيدان لي true .

var number1:Int = 7
var number2:Int = 4
println(number1 < 10 && number2 < 5)
output : true

بوابة OR :-

هذه البوابة تخالف AND في انها اذا كان احد الشرطين صحيح فهي تعيد قيمة صحيحة true أي انها لا تشترط ان يكون كلاهما صحيحين .
تمثل برمجياً بهذا الرمز (||) .
اذا كان احدهما صحيح على الأقل فهي تعيد true اذا لا تشترط ان يكون كلاهما صحيح كما في AND .

var number1:Int = 7
var number2:Int = 4
println(number1 < 10 || number2 > 5)
output : true

بوابة NOT :-

تقوم بنفي القيمة المدخلة  كما شرحناه في المثال اعلاه.


جدول مقارنة :

بوابة AND

 تمثل برمجياً بهذا الرمز (&&) .

وفي المثال نجد أنه لدي قيمتين اريد التحقق منهما كلهما بأنهما يعيدان لي true .

number1 < 10 && number2 < 5

var number1:Int = 7
var number2:Int = 4
println(number1 < 10 && number2 < 5)

الناتج :

true

بوابة OR

تمثل برمجياً بهذا الرمز (||) .

اذا كان احدهما صحيح على الأقل فهي تعيد true اذا لا تشترط ان يكون كلاهما صحيح كما في AND .

var number1:Int = 7
var number2:Int = 4
println(number1 < 10 || number2 > 5)

الناتج :

true