عملگرهای ریاضی

Go از عملگرهای ریاضی برای انجام محاسبات استفاده می‌کند. جدول زیر عملگرهای ریاضی Go را نشان می‌دهد :

عملگر مثال نتیجه
+ var1 = var2 + var3 Var1 برابر است با حاصل جمع var2 و var3
var1 = var2 – var3 Var1 برابر است با حاصل تفریق var2 و var3
* var1 = var2 * var3 Var1 برابر است با حاصلضرب var2 در var3
/ var1 = var2 / var3 Var1 برابر است با حاصل تقسیم var2 بر var3
% var1 = var2 % var3 Var1 برابر است با باقیمانده تقسیم var2 و var3
++ var1 ++ به متغیر var1 یک واحد اضافه می کند.
var1 — از متغیر var1 یک واحد کم می کند.

مثال بالا در از نوع عددی استفاده شده است. اما استفاده از عملگرهای ریاضی برای نوع رشته‌ای نتیجه متفاوتی دارد. اگر از عملگر + برای رشته‌ها استفاده کنیم دو رشته را با هم ترکیب کرده و به هم می‌چسباند. حال می‌توانیم با ایجاد یک برنامه نحوه عملکرد عملگرهای ریاضی در Go را یاد بگیریم :

  1: package main
  2: 
  3: import "fmt"
  4: 
  5: func main() {
  6: 
  7:     //Assign test values
  8:     var num1 int = 5
  9:     var num2 int = 3
 10: 
 11:     //Demonstrate use of mathematical operators
 12:     fmt.Printf("The sum of %d and %d is %d.             \n", num1, num2, (num1 + num2))
 13:     fmt.Printf("The difference of %d and %d is %d.      \n", num1, num2, (num1 - num2))
 14:     fmt.Printf("The product of %d and %d is %d.         \n", num1, num2, (num1 * num2))
 15:     fmt.Printf("The quotient of %d and %d is %.2f.      \n", num1, num2, float32(num1 / num2))
 16:     fmt.Printf("The remainder of %d divided by %d is %d.\n", num1, num2, (num1 % num2))
 17:     fmt.Printf("The result of %d power %d is %d.        \n", num1, num2, (num1 * num2))
 18:     fmt.Printf("The quotient of %d and %d is %d.        \n", num1, num2, (num1 / num2))
 19: 
 20:     //Demonstrate concatenation on strings using the + operator
 21:     var msg1 = "Hello "
 22:     var msg2 = "World!"
 23:     fmt.Print(msg1 + msg2)
 24: }
The sum of 5 and 3 is 8.
The difference of 5 and 3 is 2.
The product of 5 and 3 is 15.
The quotient of 5 and 3 is 1.00.
The remainder of 5 divided by 3 is 2.
The result of 5 power 3 is 125.
The quotient of 5 and 3 is 1.
Hello World!

برنامه بالا نتیجه هر عبارت را نشان می‌دهد. در این برنامه از متد Printf() برای نشان دادن نتایج و از n\ برای چاپ آنها در سطرهای متفاوت استفاده شده است. در خط 15 برای اینکه ارقام کسری بعد از عدد حاصل دو رقم باشند از %.2f استفاده می‌کنیم. %.2f در این جا بدین معناست که عدد را تا دو رقم اعشار نمایش بده. Go خط جدید و فاصله و فضای خالی را نادیده می‌گیرد. در خط 23 مشاهده می‌کنید که دو رشته به وسیله عملگر + به هم متصل شده‌اند. نتیجه استفاده از عملگر + برای چسباندن دو کلمه “Hello “ و “!World” رشته “!Hello World” خواهد بود. به فاصله‌های خالی بعد از اولین کلمه توجه کنید اگر آنها را حذف کنید از خروجی برنامه نیز حذف می‌شوند.