Menu
CoddyTech

Kiểm tra quy tắc tập hợp

Thuộc phần Logic và luồng chương trình trong hành trình Kotlin của Coddy. Bài học 33 trên 63.

any kiểm tra xem có ít nhất một phần tử khớp hay không, all kiểm tra xem mọi phần tử có khớp hay không, còn none kiểm tra xem không có phần tử nào khớp hay không. Với đầu vào rỗng, any trả về false, còn all và none trả về true. Các thao tác này trả về một giá trị Boolean, không phải một tập hợp đã lọc.

Bên trong main:

val values = emptyList<Int>()
println(values.all { it > 0 })

Không có phần tử nào vi phạm quy tắc, vì vậy all trả về true với danh sách rỗng.

Với một tập hợp rỗng, any là false, còn all và none là true.

challenge icon

Thử thách

Trung bình

Hoàn thiện hasNegative với tham số values: List<Int>. Trả về kết quả cho biết có ít nhất một giá trị âm hay không. Dùng any.

Trừ khi có giới hạn chặt hơn được nêu ở trên, mỗi cấp của các tập hợp chứa tối đa 100 phần tử, và các đối số số nguyên cùng giá trị số nguyên trong tập hợp nằm trong khoảng từ -1000 đến 1000. Văn bản được cung cấp để phân tích có thể chứa các biểu diễn không hợp lệ hoặc nằm ngoài phạm vi như mô tả.

Trả về giá trị kiểu Boolean. Giữ nguyên code đầu vào/đầu ra được cung cấp. Code này đọc mỗi đối số đơn trên một dòng; danh sách bắt đầu bằng số lượng phần tử, tiếp theo là các phần tử, còn map bắt đầu bằng số lượng mục, tiếp theo là từng khóa và giá trị. Danh sách lồng nhau lặp lại định dạng số lượng phần tử và các phần tử cho từng hàng. main được cung cấp sẽ in giá trị trả về, sau đó là một ký tự xuống dòng. Danh sách dùng định dạng có dấu ngoặc vuông tiêu chuẩn của Kotlin; không in thêm nhãn nào.

Tự làm thử

fun hasNegative(values: List<Int>): Boolean {
    // Viết lời giải của bạn ở đây.
    return false
}
fun main() {
    val valuesCount = readln().toInt()
    val values = mutableListOf<Int>()
    for (i0 in 0 until valuesCount) {
        val valuesItem = readln().toInt()
        values.add(valuesItem)
    }
    println(hasNegative(values))
}
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 Logic và luồng chương trình

Tự luyện tập: Playground Kotlin