عملگرهای ریاضی
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” خواهد بود. به فاصلههای خالی بعد از اولین کلمه توجه کنید اگر آنها را حذف کنید از خروجی برنامه نیز حذف میشوند.