Rangkuman: Kuantitas yang Divalidasi
Termasuk bagian Logika & Alur dalam perjalanan Kotlin di Coddy. Pelajaran 55 dari 63.
Tantangan
SedangLengkapi quantityTotal dengan parameter texts: List<String>. Hapus spasi di awal dan akhir, lalu parse setiap string sebagai Int. Abaikan nilai yang tidak valid atau di luar rentang, serta kuantitas negatif. Jumlahkan kuantitas nonnegatif yang tersisa. Jumlahnya muat dalam Int.
Kecuali batas yang lebih ketat dinyatakan di atas, koleksi berisi paling banyak 100 elemen pada setiap tingkat, dan argumen integer serta nilai dalam koleksi integer berada di antara -1000 dan 1000. Teks yang diberikan untuk diparse dapat mencakup representasi yang tidak valid atau di luar rentang seperti yang dijelaskan.
Kembalikan nilai bertipe Int. Pertahankan kode input/output yang disediakan. Kode tersebut membaca argumen skalar satu per baris; sebuah list dimulai dengan jumlah elemennya, diikuti elemen-elemennya, dan sebuah map dimulai dengan jumlah entrinya, diikuti setiap key dan value. List bertingkat mengulangi format jumlah-dan-elemen untuk setiap baris. main yang disediakan mencetak nilai kembalian diikuti satu newline. List menggunakan format standar Kotlin dengan tanda kurung siku; jangan cetak label tambahan.
Coba sendiri
fun quantityTotal(texts: List<String>): Int {
// Tulis solusimu di sini.
return 0
}
fun main() {
val textsCount = readln().toInt()
val texts = mutableListOf<String>()
for (i0 in 0 until textsCount) {
val textsItem = readLine().orEmpty()
texts.add(textsItem)
}
println(quantityTotal(texts))
}Semua pelajaran di Logika & Alur
4Koleksi Bersarang
List Berisi ListMenelusuri BarisRingkasan BarisMeratakan List BertingkatRangkuman, Baris Tempat Duduk7Alur Pemrosesan Koleksi
Transformasi dengan MapMemfilter NilaiMenguji Aturan KoleksiMengakumulasi dengan FoldRangkuman: Total yang Disetujui2Map Bagian 2
Menelusuri Entri MapKunci dan NilaiMap FrekuensiMap BersarangRingkasan: Laporan Frekuensi5Proyek: Buku Kontak
Menyimpan KontakMencari Kontak8Mengurutkan dan Mengelompokkan
Mengurutkan Berdasarkan KunciMenggabungkan PerbandinganMengelompokkan NilaiMengaitkan Berdasarkan KunciRangkuman: Papan Peringkat Berdasarkan Panjang11Penanganan Error
Parsing Tanpa PengecualianMenangani Error Tertentutry sebagai EkspresiValidasi dengan RequireRangkuman: Kuantitas yang DivalidasiLatihan sendiri: Playground Kotlin