golang_3
TRANSCRIPT
III(IF-ELSE, FOR)
Roadmap pembelajaran Go
- Setup GoSDK- Struktur kode Go
- Kompilasi kode Go
- If - else- Switch - Case
- For
III
- Standar Lib Go- Variabel
- Konstanta- Tipe Data- Operator
III
IV...
API
Apa yang kita pelajari?1. Kontrol Kondisi (If)2. Switch - Case3. For4. For - Range5. Break dan Continue
Tujuan pembelajaranPoin - poin yang kita harap dapatkan pada sesi ini :
Pengetahuan
• Mengetahui fungsi seleksi kondisi
• Mengetahui keyword seleksi kondisi (IF - ELSE dan Switch - Case)
• Mengetahui fungsi perulangan
• Mengetahui keyword fungsi perulangan (FOR)
Skills
• Dapat menggunakan fungsi seleksi kondisi (IF - ELSE dan Switch - Case)
• Dapat menggunakan fungsi perulangan (FOR)
Seleksi Kondisi• Seleksi kondisi digunakan untuk mengontrol alur program• Yang dijadikan acuan oleh seleksi kondisi adalah nilai bertipe bool,
bisa berasa dari variabel, ataupun hasil operasi perbandingan. Nilai tersebut akan menentukan blok kode mana yang akan dieksekusi.• Go memiliki 2 macam keyword untuk seleksi kondisi, yaitu if else dan
switch.• Go tidak mendukung seleksi kondisi menggunakan ternary.
contoh : var data = (isExist ? "ada" : "tidak ada") // Error
IF - ELSE IF dan ELSE• Cara penerapan if-else di Go sama dengan pada bahasa pemrograman
lain. Yang membedakan hanya tanda kurungnya (parentheses), di Go tidak perlu ditulis.• brace pada seleksi kondisi IF atau operasi kontrol struktur pada Go
tidak boleh ditempatkan pada baris baru.
// contoh penempatan brace pada kontrol struktur Go yang benar if i < 10 { // benar // lakukan sesuatu disini }
// contoh penempatan brace pada kontrol struktur Go yang salah if i < 10 { // salah // lakukan sesuatu disini }
package main
import "fmt"
func main(){ var point = 8
if point == 10{ fmt.Println("Lulus dengan nilai sempurna..") }else if point > 5{ fmt.Println("Lulus") }else if point == 4{ fmt.Println("Hampir lulus") }else{ fmt.Println("Tidak lulus") } }
Variabel temporer pada IF-ELSE• Variabel temporary adalah variabel yang hanya bisa digunakan pada
blok seleksi kondisi dimana ia ditempatkan saja.• Beberapa manfaat dari penggunaan variabel temporer pada IF-ELSE
sebagai berikut :• Scope atau cakupan variabel jelas, hanya bisa digunakan pad blok seleksi
kondisi itu saja.• Kode menjadi lebih rapi
package main
import "fmt"
func main(){ var point = 8840.0
if persentase := point / 100; persentase >= 100{ fmt.Println("Lulus dengan nilai sempurna..") }else if point > 70{ fmt.Println("Lulus") }else{ fmt.Println("Tidak lulus") } }
SWITCH• Switch merupakan seleksi kondisi yang sifatnya fokus pada satu variabel.• Pada Go ketika sebuah kondisi pada case terpenuhi, maka proses tidak akan dilanjutkan ke proses
selanjutnya (meskipun tidak menggunakan keyword break). Untuk memaksa proses dilanjutkan ke case selanjutnya maka gunakan keyword fallthrough.
• Pada Go suatu case bisa menggunakan beberapa nilai kondisi sekaligus (multiple condition).• Operator brace "{" dan "}" bersifat opsional pada keyword case dan default.
package main
import "fmt"
func main(){ var point = 10 switch point{ case 10: // Kondisi tunggal fmt.Println("Lulus sempurna") case 8: fmt.Println("Lulus memuaskan") case 7, 6, 5: // Kondisi beragam (multiple) fmt.Println("Lulus") default: { fmt.Println("Tidak Lulus") }}
package main
import "fmt"
func main(){ var point = 10 switch point{ case 10: // Kondisi tunggal fmt.Println("Lulus sempurna") case 8: fmt.Println("Lulus memuaskan") fallthrough case 7, 6, 5: // Kondisi beragam (multiple) fmt.Println("Lulus") default: { fmt.Println("Tidak Lulus") }}
Perulangan (Looping)• Perulangan merupakan proses mengulang-ulang eksekusi blok kode
tanpa henti, selama kondisi yang dijadikan acuan terpenuhi. Biasanya disiapkan variabel untuk iterasi atau variabel penanda kapan perulangan akan diberhentikan.• Di Go keyword perulangan hanya for saja, tetapi meski demikian,
kemampuannya merupakan gabungan for, foreach, dan while pada bahasa pemrograman lain.
FOR• Di Golang proses perulangan (looping) hanya menggunakan keyword
for saja. • Perulangan sama seperti halnya seleksi kondisi (if), bisa juga dilakukan
pada kondisi bersarang (nested)
// looping for menggunakan variabel counter beserta kondisi //for i := 0; i < 5; i++ { fmt.Println(i)}
// looping for menggunakan dengan argumen kondisi saja //var i int = 0
for i < 5 { fmt.Println(i) i++}
// looping for tanpa argumen //var i int = 0
for { fmt.Println(i) i++ if i == 5 { break }}
// Penggunaan looping for pada proses bersarang (nested)for i := 1; i <= 5; i++ { for j := i; j < 5; j++ { fmt.Println(j, " ") } fmt.Println() }
FOR - RANGE• Perulangan (looping) for bisa juga dikombinasikan dengan keyword
range. Cara ini biasa digunakan untuk melakukan proses perulangan pada data bertipe array.
BREAK dan CONTINUE• Keyword break dan continue bisa digunakan pada proses perulangan, dimana statement break
digunakan untuk "memaksa" menghentikan proses perulangan yang sedang berjalan. Statement continue digunakan untuk memaksa maju ke perulangan berikutnya.
for i := 1; i <= 10; i++ { if i % 2 == 1 { continue }
if i > 8 { break }
fmt.Println(i)}
Saran dan Masukan (Feedback)