Golang |
Intro
Lanjut dari tahapan sebelumnya tentang tipe data, constant dan variable, kali ini pembahasan nya yaitu beberapa operator di golang baik itu aritmatik, logical bitwise dan lain sebagainya, ada juga pembahasan kondisional yaitu seperti if else atau case, dan pembahasan tentang loop di golang. btw sumber tulisan ini saya belajar dari sini ya https://www.tutorialspoint.com/go/index.htm
1. Operator
Di dalam bahasa pemrograman ada beberapa operator yang biasa kita gunakan, yang semuanya hampir sama yaitu operator aritmatik seperti tambah, kurang, bagi dan perkalian, nah disini saya akan coba contohkan penulisan operator di golang berikut adalah code nya.
A. Aritmatik Operator
// contoh aritmatik
package main
import "fmt"
func main() {
var a int = 21
var b int = 10
var c int
c = a + b
fmt.Printf("Line 1 - Hasil Tambah %d\n", c)
c = a - b
fmt.Printf("Line 2 - Hasil Pengurangan %d\n", c)
c = a * b
fmt.Printf("Line 3 - Hasil Perkalian %d\n", c)
c = a / b
fmt.Printf("Line 4 - Hasil Pembagian %d\n", c)
c = a % b
fmt.Printf("Line 5 - Hasil Modulus %d\n", c)
a++
fmt.Printf("Line 6 - Hasil Increment %d\n", a)
a--
fmt.Printf("Line 7 - Hasil Decrement %d\n", a)
}
B. Relational operator berikut adalah contoh kode nya:
// realtional operator
package main
import "fmt"
func main() {
var a int = 10
var b int = 21
if a == b { // operator sama dengan
fmt.Printf("Line 1 - a sama dengan b\n")
} else {
fmt.Printf("Line 1 - a tidak sama dengan b\n")
}
if a < b { // operator lebih kecil dari
fmt.Printf("Line 2 - a lebih kecil dari b\n")
} else {
fmt.Printf("Line 2 - a tidak lebih kecil dari b\n")
}
if a > b { // operator lebih besar dari
fmt.Printf("Line 3 - a lebih besar dari b\n")
} else {
fmt.Printf("Line 3 - a tidak lebih besar dari b\n")
}
/* Lets change value of a and b */
a = 5
b = 20
if a <= b { // operator <= lebih kecil sama dengan
fmt.Printf("Line 4 - a lebih kecil sama dengan dari b\n")
}
if b >= a { operator >= lebih besar sama dengan
fmt.Printf("Line 5 - b lebih besar sama dengan dari a\n")
}
}
C. Logical operator berikut adalah contoh kode nya:
package main
import "fmt"
func main() {
var a bool = true
var b bool = false
if ( a && b ) { // operator AND
fmt.Printf("Line 1 - Condition is true\n" )
}
if ( a || b ) { // operator OR
fmt.Printf("Line 2 - Condition is true\n" )
}
/* lets change the value of a and b */
a = false
b = true
if ( a && b ) {
fmt.Printf("Line 3 - Condition is true\n" )
} else {
fmt.Printf("Line 3 - Condition is not true\n" )
}
if ( !(a && b) ) {
fmt.Printf("Line 4 - Condition is true\n" )
}
}
D. Bitwise Operator
package main
import "fmt"
func main() {
var a uint = 60 /* 60 = 0011 1100 */
var b uint = 13 /* 13 = 0000 1101 */
var c uint = 0
c = a & b /* 12 = 0000 1100 */
fmt.Printf("Line 1 - Value of c is %d\n", c )
c = a | b /* 61 = 0011 1101 */
fmt.Printf("Line 2 - Value of c is %d\n", c )
c = a ^ b /* 49 = 0011 0001 */
fmt.Printf("Line 3 - Value of c is %d\n", c )
c = a << 2 /* 240 = 1111 0000 */
fmt.Printf("Line 4 - Value of c is %d\n", c )
c = a >> 2 /* 15 = 0000 1111 */
fmt.Printf("Line 5 - Value of c is %d\n", c )
}
E. Assignment operator
package main
import "fmt"
func main() {
var a int = 21
var c int
c = a
fmt.Printf("Line 1 - = Operator Example, Value of c = %d\n", c)
c += a
fmt.Printf("Line 2 - += Operator Example, Value of c = %d\n", c)
c -= a
fmt.Printf("Line 3 - -= Operator Example, Value of c = %d\n", c)
c *= a
fmt.Printf("Line 4 - *= Operator Example, Value of c = %d\n", c)
c /= a
fmt.Printf("Line 5 - /= Operator Example, Value of c = %d\n", c)
c = 200
c <<= 2
fmt.Printf("Line 6 - <<= Operator Example, Value of c = %d\n", c)
c >>= 2
fmt.Printf("Line 7 - >>= Operator Example, Value of c = %d\n", c)
c &= 2
fmt.Printf("Line 8 - &= Operator Example, Value of c = %d\n", c)
c ^= 2
fmt.Printf("Line 9 - ^= Operator Example, Value of c = %d\n", c)
c |= 2
fmt.Printf("Line 10 - |= Operator Example, Value of c = %d\n", c)
}
2. Kondisional
Di dalam bahasa pemrograman pasti ada namanya kondisional nah sekarang kita akan contohkan beberapa kodisional di golang seperti if else elseif dan case.
A. If Else Dan Elseif
package main
import "fmt"
func main() {
/* local variable definition */
var a int = 100
var b int = 200
if a == 1010 {
fmt.Printf("Kondisi Pertama terpenuhi a = %d\n", 100)
} else if a == b {
fmt.Printf("Kondisi kedua terpenuhi a = %d\n", b)
} else {
fmt.Println("Kondisi Default jika a dan b tidak terpenuhi")
}
}
B. Switch dan Case
package main
import "fmt"
func main() {
/* local variable definition */
var ranking string = "B"
var nilai int = 90
switch nilai {
case 90:
ranking = "A"
case 80:
ranking = "B"
case 50, 60, 70:
ranking = "C"
default:
ranking = "D"
}
switch {
case ranking == "A":
fmt.Printf("Excellent!\n")
case ranking == "B", ranking == "C":
fmt.Printf("Well done\n")
case ranking == "D":
fmt.Printf("You passed\n")
case ranking == "F":
fmt.Printf("Better try ranking\n")
default:
fmt.Printf("Invalid ranking\n")
}
fmt.Printf("Your ranking is %s\n", ranking)
}
3. Loop
Di dalam bahasa pemrograman pasti ada loop biasanya di gunakan untuk melakukan pengulangan terhadap kondisi Array.
1. Loop Menggunakan Foor
package main
import "fmt"
func main() {
var b int = 15
var a int
numbers := [6]int{1, 2, 3, 5}
/* for loop execution di eksekusi dari 0-9*/
for a := 0; a < 10; a++ {
fmt.Printf("value of a: %d\n", a)
}
for a < b {
a++
fmt.Printf("value of a: %d\n", a)
}
for i, x := range numbers {
fmt.Printf("value of x = %d at %d\n", x, i)
}
}
// nested loop
package main
import "fmt"
func main() {
/* local variable definition */
var i, j int
for i = 2; i < 100; i++ {
for j = 2; j <= (i/j); j++ {
if(i%j==0) {
break; // if factor found, not prime
}
}
if(j > (i/j)) {
fmt.Printf("%d is prime\n", i);
}
}
}
2. Break Di Loop
package main
import "fmt"
func main() {
/* local variable definition */
var a int = 10
/* for loop execution looping dari*/
for a < 20 {
fmt.Printf('value of a: %d\n', a)
a++
if a > 15 {
/* berhenti jika pengulangan sudah mencapai angka 15 */
break
}
}
}
2. Continue Di Loop
package main
import "fmt"
func main() {
/* local variable definition */
var a int = 10
/* do loop execution */
for a < 20 {
if a == 15 {
/* skip the iteration */
a = a + 1
continue
}
fmt.Printf("value of a: %d\n", a)
a++
}
}
Mungkin segitu yang bisa saya sharing semoga bermanfaat bagi teman-teman, jika ada yang tidak mengerti, ada kesalahan dalam penulisan dan ada yang ingin ditanyakan atau di tambahkan bisa tulis dikolom komentar terimakasih.
0 Komentar