Menu
CoddyTech

Duyệt qua chuỗi P1

Thuộc phần Kiến thức nền tảng trong hành trình Kotlin của Coddy. Bài học 76 trên 93.

Tương tự danh sách, bạn có thể lặp qua từng ký tự trong chuỗi bằng vòng lặp for. Trong Kotlin, chuỗi về cơ bản là một dãy ký tự, nên bạn cũng có thể áp dụng cách lặp tương tự.

val word = "Hello"
for (char in word) {
    println(char)
}
// Đầu ra:
// H
// e
// l
// l
// o

Mỗi lần lặp cung cấp cho bạn một Char từ chuỗi. Điều này hữu ích khi bạn cần xem xét hoặc xử lý từng ký tự riêng lẻ, chẳng hạn như đếm các chữ cái cụ thể hoặc tạo một chuỗi mới dựa trên những điều kiện nhất định.

val text = "Kotlin"
var count = 0
for (char in text) {
    if (char == 'o' || char == 'i') {
        count++
    }
}
println(count)  // 2

Bạn cũng có thể dùng withIndex() với chuỗi để lấy cả vị trí lẫn ký tự, giống như với danh sách:

val name = "Ada"
for ((index, char) in name.withIndex()) {
    println("$index: $char")
}
// Đầu ra:
// 0: A
// 1: d
// 2: a
challenge icon

Thử thách

Trung bình

Đọc một chuỗi từ đầu vào và đếm số nguyên âm (a, e, i, o, u) trong chuỗi đó. Tính cả nguyên âm viết thường và viết hoa.

Duyệt qua từng ký tự trong chuỗi và kiểm tra xem ký tự đó có phải là nguyên âm không. In ra tổng số nguyên âm tìm được.

Định dạng đầu vào:

  • Một chuỗi duy nhất

Định dạng đầu ra:

In ra một số nguyên duy nhất biểu thị số nguyên âm trong chuỗi.

Gợi ý: Bạn có thể chuyển từng ký tự thành chữ thường bằng lowercaseChar() trước khi kiểm tra, hoặc kiểm tra riêng cả hai dạng chữ.

Tự làm thử

fun main() {
    // Đọc đầu vào
    val text = readLine()!!
    
    // TODO: Viết code bên dưới để đếm số nguyên âm trong chuỗi
    
    
    // In ra kết quả
    println(count)
}
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Kiến thức nền tảng

Tự luyện tập: Playground Kotlin