الاثنين، 2 أبريل 2012

تعلم لغة البرمجة Go بالعربي ( الدرس السادس )

بسم الله الرحمن الرحيم
جمل أتخاذ القرار if:

تستخدم جمل اتخاذ القرار لتحكم في سير تنفيذ البرنامج بناء على البيانات و المقارنات كهذا المثال في لغة Go:

package main

import "fmt"

func main(){

x := 12

if x < 20 {

fmt.Println("x<20")

}

    }

الطريق المستخدم في مثالنا الأول مشابه للغة السي و الجافا و المختلف في لغة Go أنه تم ألغاء استخدام القوسين () و لم يمكن أستخدمها حتى اختيارياً , أما القوسين { } المستخدمين لتحديد الكود المراد تنفيذه عن مطابقة الشرط فأصبحت أجبارية .


if x < 20 {

fmt.Println("x<20")

}

في مثالنا سيتم المقارنة بواسطة "x < 20" و في حالة مطابقة الشرط سيتم تنفيذ السطر الموجود بين القوسين { } , و هذا هي عوامل المقارنة في لغة GO :

  • <     : أكبر من 
  • >     : أصغر من
  • ==   : مساوي لي 
  • !=    : غير مساوي 
  • &&  : كلنا من المقارنات صحيح
  • ||      : أحد من المقارنات صحيح 
و هذه أمثلة على أستخدام بعض هذه التعابير :

1. المقارنة ( غير مساوي ):
package main

import "fmt"

func main(){

if 12 != 1 {

fmt.Println("true") }

}

في هذا المثال قارنا بين القيمة 12 و 1 و بواسطة != و في حالة كانت المقارنة صحيحة سيتم طباعة الكلمة "true"

2.  && ( كلن من المقارنات صحيح ) :

package main

import "fmt"

func main(){

if 12 != 1 && 12 > 1{

fmt.Println("true") }

}

3 . || ( أحد المقارنات صحيح ) :

package main

import "fmt"

func main(){

if 12 != 1 || 12 > 1{

fmt.Println("true") }

}

و في لغة Go هنالك طريقة جديدة للتصريح عن جملة المقارنة if :

package main

import "fmt"

func pow(x int) int{

return x*x*x

}

func main(){

n := 4

c := 14

if v := pow(n); v > c {

fmt.Println(v)

}
          }   

لقد قمنا في هذا المثال بالتصريح عن المتغير في نفس السطر الخاص بالجملة القرار  if  و فصلنها بواسطة ";" عن المقارنة :

if v := pow(n); v > c {

fmt.Println(v)

}

  • الجملة القرار if-else :
في حالة وجود مقارنة تستطيع أستخدام الجملة if else كهذا المثال :

package main

import "fmt"

func main() {

x := 13

if x > 12 {

fmt.Println("x > 12")

}else if x < 12{

fmt.Println("x < 12")

}else{

fmt.Println("x=12")}

}

يقوم هذا البرنامج بمقارنة قيمة المتغير x مع العدد 12 و طباعة النتيجة لكن يجب أنبه أن الكلمتين else و if else يجب ان تكونا في نفس السطر الذي يتنهي فيه القوس {} الخاص بالمقارنة السابقة , كما يجب أن يبدأ القوس الخاص بالمقارنة الحالية في نفس السطر .

}else if x < 12{ ً# في حالة كتابة القوسين في سطر منفصل سوف يحدث خطأ عند الترجمة

}else{

كما يجب أن يكون القوس الخاص ببداية الجملة if في نفس السطر الخاص بالمقارنة :
if x > 12 {


و هذه نهاية الدرس السادس و ان شاء الله سوف يكون الدرس السابع عن جملة switch في لغة Go .

ليست هناك تعليقات:

إرسال تعليق