Rangkuman: Pelacak Skor Dasar
Termasuk bagian Logika dan Alur dalam perjalanan Rust di Coddy. Pelajaran 14 dari 66.
Tantangan
MudahKamu akan menerima dua input: pertama, daftar nilai tes yang dipisahkan koma, dan kedua, nilai yang akan ditambahkan. Buat vector dari nilai awal, tambahkan nilai baru, hitung rata-rata semua nilai, lalu cetak hasilnya.
Persyaratan:
- Baca input pertama yang berisi nilai-nilai yang dipisahkan koma (misalnya,
85,92,78) - Pisahkan string berdasarkan koma dan hapus spasi di sekitar setiap token sebelum mengubahnya menjadi bilangan bulat (misalnya, gunakan
.trim()pada setiap elemen setelah pemisahan) - Buat vector yang bisa diubah dari nilai-nilai tersebut
- Baca input kedua dan ubah menjadi bilangan bulat (hapus spasi di sekitarnya terlebih dahulu)
- Gunakan
.push()untuk menambahkan nilai baru ke vector - Hitung rata-rata semua nilai dalam vector
- Cetak jumlah total nilai
- Cetak nilai rata-rata (sebagai bilangan bulat)
Input:
- Baris pertama: Bilangan bulat yang dipisahkan koma dan mewakili nilai awal (misalnya,
85,92,78) - Baris kedua: Bilangan bulat yang mewakili nilai baru yang akan ditambahkan
Output:
- Baris pertama: Jumlah total nilai
- Baris kedua: Nilai rata-rata (sebagai bilangan bulat, dipotong)
Catatan: Selalu panggil .trim() pada seluruh baris input dan pada setiap token nilai setelah dipisahkan dengan koma. String input mungkin berisi spasi kosong atau karakter baris baru yang tidak terlihat, yang akan menyebabkan panic saat parsing jika tidak dihapus.
Coba sendiri
use std::io;
fn main() {
// Baca skor yang dipisahkan koma
let mut scores_input = String::new();
io::stdin().read_line(&mut scores_input).expect("Failed to read line");
// Baca skor baru yang akan ditambahkan
let mut new_score_input = String::new();
io::stdin().read_line(&mut new_score_input).expect("Failed to read line");
// TODO: Tulis kodemu di bawah ini
// 1. Pisahkan scores_input berdasarkan koma dan ubah menjadi bilangan bulat
// 2. Buat vektor yang dapat diubah dari skor-skor ini
// 3. Ubah new_score_input menjadi bilangan bulat
// 4. push skor baru ke vektor
// 5. Hitung rata-rata semua skor
// Cetak jumlah total skor
// println!("{}", total_scores);
// Cetak skor rata-rata
// println!("{}", average);
}Semua pelajaran di Logika dan Alur
1Alur Kontrol Lanjutan
Ekspresi 'match'Mencocokkan Beberapa NilaiMencocokkan RentangEkspresi 'if let'Perulangan sebagai EkspresiRangkuman, Parser Perintah Sederhana4Mengelompokkan Data dengan Struct
Apa Itu Struct?Ringkasan StructMengakses Field StructStruct yang Dapat DiubahStruct sebagai Parameter FungsiStruct TupleRangkuman: Buat Struct Buku2Pengantar Vektor
Apa Itu Vektor?Membuat VektorMenambahkan Elemen dengan pushMengakses Elemen VektorMelakukan Iterasi pada VektorIterasi MutableMenghapus ElemenRangkuman: Pelacak Skor Dasar5Pasangan Kunci-Nilai dengan Hash Map
Apa Itu Hash Map?Membuat Hash MapMenyisipkan Pasangan Kunci-NilaiMengakses NilaiMenelusuri Hash MapMemperbarui NilaiMenghapus PasanganRangkuman: Penghitung Kata8Proyek: Inventaris Barang Sederhana
Menyiapkan ProyekMenambahkan BarangMemeriksa StokMenjual BarangMenyatukan Semuanya3Daftar Tugas Baris Perintah
Penyiapan ProyekMenambahkan TugasMelihat Semua TugasMenghapus TugasKode AkhirLatihan sendiri: Compiler Rust online