Skip to content

Latest commit

 

History

History
99 lines (70 loc) · 1.61 KB

File metadata and controls

99 lines (70 loc) · 1.61 KB

Control Flow

Control flow mengatur arah jalannya program berdasarkan kondisi atau pengulangan.

if, else if, else

let nilai = 78;

if nilai >= 80 {
    println!("Grade A");
} else if nilai >= 70 {
    println!("Grade B");
} else {
    println!("Perlu belajar lagi");
}

Kondisi pada Rust harus bertipe bool. Rust tidak mengizinkan angka dipakai langsung sebagai kondisi.

if sebagai expression

if bisa mengembalikan nilai.

let cuaca = "hujan";
let pesan = if cuaca == "hujan" {
    "bawa payung"
} else {
    "cuaca aman"
};

Semua cabang harus mengembalikan tipe yang sama.

loop

loop akan berjalan terus sampai dihentikan dengan break.

let mut angka = 0;

loop {
    angka += 1;
    if angka == 3 {
        break;
    }
}

while

Dipakai saat kondisi penghentian sudah jelas.

let mut sisa = 3;

while sisa > 0 {
    println!("Sisa: {}", sisa);
    sisa -= 1;
}

for

Cara paling umum untuk iterasi.

let buah = ["apel", "pisang", "mangga"];

for item in buah {
    println!("{}", item);
}

Untuk range:

for i in 1..=5 {
    println!("{}", i);
}

Exercise

  1. Buat program yang menentukan lulus atau tidak dari nilai tertentu.
  2. Cetak angka 1 sampai 10 dengan for.
  3. Buat countdown dengan while.
  4. Gunakan if expression untuk menentukan status premium atau reguler.

Challenge

Buat program menu sederhana:

  • jika angka 1, cetak Tambah data
  • jika angka 2, cetak Lihat data
  • selain itu cetak Menu tidak tersedia

Petunjuk: bisa memakai if bertingkat atau lanjutkan dengan match setelah membaca bab berikutnya.