If-Else Bersarang
Termasuk bagian Dasar-Dasar dalam perjalanan Rust di Coddy. Pelajaran 28 dari 75.
Kita dapat menyarangkan pernyataan if / else if / else satu sama lain. Ini memungkinkan kita membuat struktur pengambilan keputusan yang hierarkis.
Sebagai contoh:
if age > 18 {
if hasLicense {
println!("You can drive");
} else {
println!("Get a license first");
}
} else {
println!("Too young to drive");
}Percabangannya bisa bersarang tanpa batas:
if condition1 {
if condition2 {
if condition3 {
// jika condition1, condition2, dan condition3 bernilai true
...
}
}
}Tantangan
PemulaBuat program yang memeriksa apakah seseorang boleh menaiki roller coaster. Persyaratannya:
- Usia minimal 12 tahun
- Tinggi badan harus lebih dari 150 cm
- Jika memenuhi kedua persyaratan tetapi berusia di bawah 15 tahun, mereka harus didampingi orang dewasa
Cetak pesan berikut secara persis untuk setiap kasus:
- Jika terlalu muda:
Sorry, you're too young - Jika tinggi badan tidak mencukupi:
Sorry, you're not tall enough - Jika berusia di bawah 15 tahun dan tanpa pendamping dewasa:
Sorry, you need an adult with you - Jika berusia di bawah 15 tahun dan didampingi orang dewasa:
You can ride with adult supervision! - Jika berusia 15 tahun atau lebih dan tinggi badan mencukupi:
You can ride by yourself!
Coba sendiri
use std::io;
fn main() {
let mut age_input = String::new();
let mut height_input = String::new();
let mut adult_input = String::new();
io::stdin().read_line(&mut age_input).unwrap();
io::stdin().read_line(&mut height_input).unwrap();
io::stdin().read_line(&mut adult_input).unwrap();
let age: i32 = age_input.trim().parse().unwrap();
let height: i32 = height_input.trim().parse().unwrap();
let has_adult: bool = adult_input.trim().parse().unwrap();
// Tulis kodemu di bawah ini
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Dasar-Dasar
4Operator Bagian 1
Operator AritmetikaOperator ModuloPintasan AritmetikaOperator PerbandinganPerbandingan String7Input/Output Dasar
Menampilkan teks di konsolMembaca input penggunaUlasan: Hingga 120Ulasan: Benar atau Salah5Operator Bagian 2
Operator Logika Bagian 1Operator Logika Bagian 2Ulasan: Logika SederhanaOperator Logika Bagian 311Fungsi
Mendeklarasikan FungsiParameter dan ArgumenNilai KembalianBeberapa Nilai KembalianRingkasan: Fungsi SigmaRingkasan: Fungsi Validasi14Iterasi pada Array
Panduan RangeFor Loop yang DisempurnakanBorrow dalam LoopOperasi Umum pada Array3Variabel Bagian 2
Deklarasi TipeKonvensi PenamaanInferensi TipeRangkuman: Inisialisasi VariabelKonversi Tipe9Perulangan
For untuk Menelusuri UrutanWhile LoopBreakContinueNested LoopLabel LoopInfinite LoopRingkasan: Input DinamisLatihan sendiri: Compiler Rust online