كيفية استخدام المشغلات في Golang

المشغلات هي الأساس لكل لغة برمجة. لذلك، فإن وظيفة لغة Golang غير مكتملة بدون استخدام المشغلات. تسمح لنا المشغلات بإجراء أنواع مختلفة من العمليات على المتعاملات. في لغة Go، يمكن تصنيف المشغلين بناءً على وظائفهم المختلفة .

كيفية استخدام المشغلات في Golang

العمليات الحسابية

تُستخدم هذه المشغلات لإجراء عمليات على المتغيرات في لغة Go:

  • الإضافة: '+' تضيف اثنين من المتغيرات. على سبيل المثال: x+y.
  • الطرح: '-' يطرح اثنين من المتغيرات. مثال:xy.
  • الضرب: '*' يضرب اثنين من المتغيرات. على سبيل المثال: x*y.
  • القسمة: '/' يقسم المتغير الأول على المتغير الثاني. على سبيل المثال: x/y.
  • الباقي: يقوم عامل '%' بإرجاع الباقي عندما يتم قسمة المتغير الأول على المتغير الثاني. على سبيل المثال: x%y.

 ملاحظة: -، +، !، &، *، <- و^ تسمى أيضًا مشغلات أحادية وأولوية المشغلات الأحادية أعلى. تأتي مشغلات ++ و — من العبارات، وليست تعبيرات، لذا فهي تقع خارج التسلسل الهرمي للمشغلات.

على سبيل المثال:

//Minh họa chương trình Go dùng toán tử số học
package main 

import "fmt"

func main() { 
p:= 34
q:= 20
	
// Phép cộng
result1:= p + q 
fmt.Printf("Result of p + q = %d", result1) 
	
// Phép trừ
result2:= p - q 
fmt.Printf("\nResult of p - q = %d", result2) 
	
// Phép nhân
result3:= p * q 
fmt.Printf("\nResult of p * q = %d", result3) 
	
// Division 
result4:= p / q 
fmt.Printf("\nResult of p / q = %d", result4) 
	
// Modulus 
result5:= p % q 
fmt.Printf("\nResult of p %% q = %d", result5) 
} 

نتيجة:

Kết quả của p + q = 54
Kết quả của p - q = 14
Kết quả của p * q = 680
Kết quả của p / q = 1
Kết quả của p % q = 14

المشغلات العلائقية

يتم استخدام مشغلي العلاقات لمقارنة قيمتين. دعونا نلقي نظرة على كل مشغل واحدا تلو الآخر:

  • يتحقق عامل '=='(يساوي) ما إذا كان المتعاملان المعطىان متساويان أم لا. إذا كان متساويًا، فإنه يعود صحيحًا. وإلا فإنه يعود خطأ. على سبيل المثال، 5==5 سيعود صحيحًا.
  • يتحقق عامل '!='(لا يساوي) ما إذا كان المتعاملان المعطىان متساويان أم لا. وإلا فإنه يعود صحيحا. وإلا فإنه يعود خطأ. هذا هو المكمل المنطقي الدقيق لمشغل '=='. على سبيل المثال، 5!=5 سيعود false.
  • يتحقق عامل '>'(أكبر من) ما إذا كان المتغير الأول أكبر من المتغير الثاني. إذا كانت القيمة أكبر، فإنها تعود صحيحة. إذا كانت القيمة أقل، فإنها تعود بـ false. على سبيل المثال، 6>5 سيعود صحيحًا.
  • يتحقق عامل '<'(أقل من) ما إذا كان المتغير الأول أقل من المتغير الثاني. إذا كان أقل، فإنه يعود صحيحا. إذا لم يكن الأمر كذلك، فسوف يعود خطأ. على سبيل المثال، <5 سيعود
  • يتحقق عامل '>='(أكبر من يساوي) ما إذا كان المتغير الأول أكبر من أو يساوي المتغير الثاني. إذا كان أكبر من أو يساوي، فإنه يعود صحيحًا. إذا كان أقل من أو يساوي، فإنه يعود خطأ. على سبيل المثال: 5>=5 سيعود صحيحًا.
  • يتحقق عامل '<=' (أقل من أو يساوي) مما إذا كان المتغير الأول أقل من أو يساوي المتغير الثاني. إذا كان أكبر من أو يساوي، فإنه يعود صحيحًا. إذا كان أقل من أو يساوي، فإنه يعود خطأ. على سبيل المثال: <=5 سيعود أيضًا

على سبيل المثال:

// Minh họa chương trình Go dùng toán tử quan hệ
package main 

import "fmt"

func main() { 
p:= 34
q:= 20
	
// ‘=='(Equal To) 
result1:= p == q 
fmt.Println(result1) 
	
// ‘!='(Not Equal To) 
result2:= p != q 
fmt.Println(result2) 
	
// ‘<‘(less than)="" result3:="p">< q="" fmt.println(result3)="" ‘="">'(Greater Than) 
result4:= p > q 
fmt.Println(result4) 
	
// ‘>='(Greater Than Equal To) 
result5:= p >= q 
fmt.Println(result5) 
	
// ‘<='(less than="" equal="" to)="" result6:="p"><= q="" fmt.println(result6)="" }="">

نتيجة:

false
true
false
true
true
false

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

يتم استخدامها لدمج شرطين أو أكثر أو لتكملة تقييم الشرط الأولي قيد النظر.

  • AND: يعيد عامل التشغيل '&&' القيمة true عندما يتم استيفاء كلا الشرطين قيد النظر. وإلا فإنه يعود خطأ. على سبيل المثال، ترجع a && b القيمة true عندما يكون كل من a وb صحيحين (أي غير صفر).
  • أو: المشغل '||' يعود صحيحًا عندما يتم استيفاء أحد الشروط (أو كليهما) قيد النظر. وإلا فإنه يعود خطأ. على سبيل المثال: أ || يعود b صحيحًا إذا كان a أو b صحيحًا (أي غير صفر). بالطبع، يعود الأمر صحيحًا عندما يكون كل من a وb صحيحين.
  • منطقي NOT: '!' المشغل يعود صحيحًا عندما لا يتم استيفاء الشرط قيد النظر. وإلا فإنه يعود خطأ. على سبيل المثال: !a ترجع true إذا كانت a خاطئة، أي عندما a = 0.

على سبيل المثال:

// Minh họa chương trình Go dùng toán tử logic
package main 
import "fmt"
func main() { 
	var p int = 23
	var q int = 60
		
	if(p!=q && p<=q){ fmt.println("true")="" }="" if(p!="q" ||=""><=q){ fmt.println("true")="" }="" if(!(p="=q)){" fmt.println("true")="" }="" }="">

نتيجة:

True
True
True

مشغلات البت

في لغة Go، هناك 6 مشغلات بتية تعمل على مستوى البت أو تُستخدم لإجراء عمليات بت ببت. وفيما يلي مشغلي البتات:

  • & (AND بتيًا): يأخذ رقمين كمتعاملين وينفذ AND على كل بت من الرقمين. تكون نتيجة AND 1 فقط إذا كان كلا البتاتين 1.
  • | (أو بتيًا): يأخذ رقمين كمتعاملين وينفذ أو على كل بت من الرقمين. نتيجة OR هي 1 إذا كان أي من البتاتين يساوي 1.
  • ^ (XOR بتّي): يأخذ رقمين كمتعاملين وينفّذ XOR على كل بت من الرقمين. نتيجة XOR هي 1 إذا كانت البتتان مختلفتين.
  • < (تحويل إلى اليسار): يأخذ رقمين، ويحول بتات المتغير الأول إلى اليسار، ويحدد المتغير الثاني عدد المواضع التي يجب تحويلها
  • >> (تحويل إلى اليمين): خذ رقمين، وقم بتحويل بتات المتغير الأول إلى اليمين، ويحدد المتغير الثاني عدد المواضع التي يجب تحويلها.
  • &^ (AND NOT): هذا عامل بتّي صريح.

على سبيل المثال:

// Minh họa chương trình Go dùng toán tử bitwise
package main 

import "fmt"

func main() { 
p:= 34
q:= 20
	
// & (bitwise AND) 
result1:= p & q 
fmt.Printf("Result of p & q = %d", result1) 
	
// | (bitwise OR) 
result2:= p | q 
fmt.Printf("\nResult of p | q = %d", result2) 
	
// ^ (bitwise XOR) 
result3:= p ^ q 
fmt.Printf("\nResult of p ^ q = %d", result3) 
	
// < (left="" shift)="" result4:="p">< 1="" fmt.printf("\nresult="" of="" p="">< 1="%d" ,"="" result4)="">> (right shift) 
result5:= p >> 1
fmt.Printf("\nResult of p >> 1 = %d", result5) 
	
// &^ (AND NOT) 
result6:= p &^ q 
fmt.Printf("\nResult of p &^ q = %d", result6) 
	
	
} 

نتيجة:

Kết quả của p & q = 0
Kết quả của p | q = 54
Kết quả của p ^ q = 54
Kết quả của p < 1="68" kết="" quả="" của="" p="">> 1 = 17
Kết quả của p &^ q = 34

عامل التعيين

يتم استخدام عامل التعيين لتعيين قيمة للمتغير. المتغير الأيسر لمشغل التعيين هو متغير والمتغير الأيمن لمشغل التعيين هو قيمة. يجب أن يكون للقيمة الموجودة على اليمين نفس نوع البيانات مثل المتغير الموجود على اليسار، وإلا فسوف يقوم المترجم بإرجاع خطأ. يتم عرض الأنواع المختلفة لمشغلي التعيين أدناه:

  • "="(التعيين البسيط): هذا هو أبسط عامل تعيين. يتم استخدام هذا المشغل لتعيين القيمة الموجودة على اليمين للمتغير الموجود على اليسار.
  • "+="(تعيين إضافي): هذا المشغل عبارة عن مزيج من المشغلين '+' و'='. يقوم هذا المشغل أولاً بإضافة القيمة الحالية للمتغير الأيسر إلى قيمة المتغير الأيمن، ثم يقوم بتعيين النتيجة للمتغير الأيسر.
  • "-="(تعيين ناقص): هذا المشغل عبارة عن مزيج من المشغلين '-' و'='. يقوم هذا المشغل أولاً بطرح القيمة الحالية للمتغير الأيسر من قيمة المتغير الأيمن، ثم يقوم بتعيين النتيجة للمتغير الأيسر.
  • "*="(تعيين الضرب): هذا المشغل عبارة عن مزيج من المشغلين '*' و'='. يقوم هذا المشغل أولاً بضرب القيمة الحالية للمتغير الأيسر بالقيمة الموجودة على اليمين، ثم يقوم بتعيين النتيجة للمتغير الأيسر.
  • "/="(تعيين القسمة): هذا المشغل عبارة عن مزيج من المشغلين '/' و'='. يقوم هذا المشغل أولاً بتقسيم القيمة الحالية للمتغير الأيسر على القيمة الموجودة على اليمين، ثم يقوم بتعيين النتيجة للمتغير الأيسر.
  • "%="(تعيين الباقي): هذا المشغل عبارة عن مزيج من المشغلين '%' و'='. يقوم هذا المشغل أولاً بأخذ باقي القيمة الحالية للمتغير الأيسر المعطى القيمة الموجودة على اليمين، ثم يقوم بتعيين النتيجة للمتغير الأيسر.
  • "&="(AND بتية): هذا المشغل عبارة عن مزيج من المشغلين '&' و'='. يقوم هذا المشغل أولاً بـ "ANDs bitwise" للقيمة الحالية للمتغير الأيسر إلى القيمة الموجودة على اليمين، ثم يقوم بتعيين النتيجة للمتغير الأيسر.
  • "^="(أو حصريًا على مستوى البت): هذا المشغل عبارة عن مزيج من المشغلين '^' و'='. يقوم هذا المشغل أولاً بـ "Bitwise Exclusive OR" القيمة الحالية للمتغير الأيسر بقيمة اليمين ثم يقوم بتعيين النتيجة للمتغير الأيسر.
  • "|="(أو شاملة لكل بت): هذا المشغل عبارة عن مزيج من '|' المشغلين و '='. يقوم هذا المشغل أولاً بـ "Bitwise Inclusive OR" القيمة الحالية للمتغير الأيسر بقيمة اليمين ثم يقوم بتعيين النتيجة للمتغير الأيسر.
  • "<=: هذا المشغل عبارة عن مزيج من مشغلي < ' و '="'." يقوم هذا المشغل أولاً "بتحويل" القيمة الحالية للمتغير على اليسار بالقيمة الموجودة على اليمين ثم يقوم بتعيين النتيجة للمتغير على اليمين.
  • ">>=": هذا المشغل عبارة عن مزيج من المشغلين '>>' و '='. يقوم هذا المشغل أولاً بـ "Right Shift AND" القيمة الحالية للمتغير الأيسر بالقيمة الموجودة على اليمين، ثم يقوم بتعيين النتيجة للمتغير الأيسر.

على سبيل المثال:

// Minh họa chương trình Go dùng toán tử gán
package main 
	
import "fmt"
	
func main() { 
var p int = 45
	var q int = 50
	
// “=”(Simple Assignment) 
p = q 
fmt.Println(p) 
	
// “+=”(Add Assignment) 
	p += q 
fmt.Println(p) 
	
//“-=”(Subtract Assignment) 
p-=q 
fmt.Println(p) 
	
// “*=”(Multiply Assignment) 
p*= q 
fmt.Println(p) 
	
// “/=”(Division Assignment) 
	p /= q 
fmt.Println(p) 
	
	// “%=”(Modulus Assignment) 
	p %= q 
fmt.Println(p) 
	
} 

نتيجة:

50
100
50
2500
50
0

مشغلين آخرين

  • &: يقوم هذا المشغل بإرجاع عنوان المتغير.
  • *: يوفر هذا المشغل مؤشرًا إلى متغير.
  • <-: اسم هذا المشغل هو الاستقبال. يتم استخدامه لاستقبال قيمة من
// Minh họa chương trình sử dụng toán tử khác
package main 
	
import "fmt"
	
func main() { 
a := 4
	
// Dùng địa chỉ của toán tử (&) toán tử trỏ gián tiếp (*)

b := &a 
fmt.Println(*b) 
*b = 7
fmt.Println(a) 
} 

نتيجة:

4
7

اترك تعليقاً

How to Fix Microsoft Teams Password Error Forgot

How to Fix Microsoft Teams Password Error Forgot

Struggling with Microsoft Teams Password Error because you forgot your password? Follow our step-by-step guide on how to fix Microsoft Teams password error forgot issues quickly and securely. No tech skills needed!

لماذا يُعدّ مايكروسوفت تيمز بطيئًا جدًا؟ ١٠ نصائح لتسريعه في عام ٢٠٢٦

لماذا يُعدّ مايكروسوفت تيمز بطيئًا جدًا؟ ١٠ نصائح لتسريعه في عام ٢٠٢٦

هل تشعر بالإحباط من بطء برنامج مايكروسوفت تيمز؟ اكتشف سبب بطء مايكروسوفت تيمز وطبّق هذه النصائح العشر المجربة لتسريعه بشكل كبير في عام 2026 من أجل تعاون سلس للغاية.

كيفية إصلاح خطأ عدم تحميل علامة تبويب ويكي في مايكروسوفت تيمز

كيفية إصلاح خطأ عدم تحميل علامة تبويب ويكي في مايكروسوفت تيمز

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

كيفية إصلاح أخطاء مزامنة إدارة المهام في مايكروسوفت تيمز

كيفية إصلاح أخطاء مزامنة إدارة المهام في مايكروسوفت تيمز

هل سئمت من أخطاء مزامنة إدارة المهام في مايكروسوفت تيمز التي تعيق سير عملك؟ اتبع حلولنا الخبيرة خطوة بخطوة لاستعادة مزامنة المهام بسلاسة بين تيمز، وبلانييه، وقائمة المهام. حلول سريعة لراحة فورية!

كيفية مسح ذاكرة التخزين المؤقت لبرنامج مايكروسوفت تيمز لإصلاح مشاكل الأداء

كيفية مسح ذاكرة التخزين المؤقت لبرنامج مايكروسوفت تيمز لإصلاح مشاكل الأداء

هل تواجه مشكلة في بطء تطبيق مايكروسوفت تيمز؟ تعرّف على كيفية مسح ذاكرة التخزين المؤقت لتطبيق مايكروسوفت تيمز خطوة بخطوة لحل مشاكل الأداء، والبطء، والتعطل، وتحسين السرعة على أنظمة ويندوز، وماك، والويب، والهواتف المحمولة. حلول سريعة وفعّالة!

كيفية إصلاح أخطاء تشغيل الوسائط في مايكروسوفت تيمز عام 2026

كيفية إصلاح أخطاء تشغيل الوسائط في مايكروسوفت تيمز عام 2026

هل سئمت من مشاكل تشغيل الوسائط في مايكروسوفت تيمز التي تُفسد اجتماعاتك لعام 2026؟ اتبع دليلنا المُفصّل خطوة بخطوة لإصلاح مشاكل الصوت والفيديو والمشاركة بسرعة - دون الحاجة لأي مهارات تقنية. تعاون سلس بانتظارك!

كيفية إصلاح خطأ مايكروسوفت تيمز رقم 1200 على الهاتف (iOS/Android)

كيفية إصلاح خطأ مايكروسوفت تيمز رقم 1200 على الهاتف (iOS/Android)

هل سئمت من خطأ مايكروسوفت تيمز رقم 1200 الذي يتسبب في انقطاع مكالماتك الهاتفية؟ اكتشف حلولاً سريعة وبسيطة لأنظمة iOS وAndroid للعودة إلى العمل الجماعي بسلاسة وسرعة - دون الحاجة إلى أي مهارات تقنية!

حل مشكلة إعدادات بروكسي مايكروسوفت تيمز

حل مشكلة إعدادات بروكسي مايكروسوفت تيمز

هل تواجه مشكلة في إعدادات بروكسي مايكروسوفت تيمز؟ اكتشف خطوات فعّالة لحل هذه المشكلة. امسح ذاكرة التخزين المؤقت، وعدّل إعدادات البروكسي، واستمتع بمكالمات سلسة في دقائق معدودة مع دليلنا المتخصص.

كيفية تسجيل الدخول إلى مركز إدارة مايكروسوفت تيمز بشكل صحيح

كيفية تسجيل الدخول إلى مركز إدارة مايكروسوفت تيمز بشكل صحيح

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

أين تقويم فريقي؟ حل مشكلات المزامنة

أين تقويم فريقي؟ حل مشكلات المزامنة

هل تواجه مشكلة في مزامنة تقويم Teams الخاص بك؟ إليك دليلًا خطوة بخطوة لحل مشاكل المزامنة في Microsoft Teams. استعد عرض التقويم وقم بالمزامنة بسهولة تامة - نصائح الخبراء متوفرة هنا!