Quiz oynatma
- Kotlin kursu
- Orta seviye
- Ders 44/116
- 6 dk
runQuiz fonksiyonuyla soruları sırayla sormayı öğrenirsin.
Quiz oynatma
Üçüncü derste runQuiz fonksiyonunu ekleriz. Bu fonksiyon listedeki tüm soruları sırayla yazdırır.
Örnek: fun runQuiz() { for (q in questions) { println(q.text); println("Cevap: ${q.answer}") } }. for (q in questions) ile her soru sırayla gezilir. q.text ve q.answer ile sorunun alanlarına erişilir. Veri modeli birinci dersten, addQuestion ikinci dersten gelir. Bu ders sadece runQuiz fonksiyonunu ekler.
Soru ve cevap yazdırma
runQuiz her soru için iki satır yazdırır: önce soru metni, sonra doğru cevap.
Örnek: for (q in questions) { println(q.text); println("Cevap: ${q.answer}") }. q.text soru metnini, q.answer doğru cevabı verir. ${q.answer} ile dize şablonu içinde özelliği gömeriz. Çağrı: runQuiz(). Sorular daha önce addQuestion ile eklenmiş olmalıdır; yoksa runQuiz boş çıktı verir.
Uygulama runQuiz ile soruları yazdır
Önceki derslerin çözümünü temel al: data class Question(val text: String, val answer: String), val questions: MutableList<Question> = mutableListOf() ve fun addQuestion(text: String, answer: String) tanımlı olsun. fun runQuiz() fonksiyonu ekle; gövdesi for (q in questions) ile her soruyu gezsin ve println(q.text) ile println("Cevap: ${q.answer}") yazsın. main içinde iki soru ekle ve runQuiz() çağır.
Başlangıç kodu
data class Question(val text: String, val answer: String)
val questions: MutableList<Question> = mutableListOf()
fun addQuestion(text: String, answer: String) {
questions.add(Question(text, answer))
}
// runQuiz fonksiyonunu ekle: tüm soruları for ile gez, metin ve cevabı yazdır
fun main() {
// İki soru ekle ve runQuiz çağır
}Örnek çözüm
data class Question(val text: String, val answer: String)
val questions: MutableList<Question> = mutableListOf()
fun addQuestion(text: String, answer: String) {
questions.add(Question(text, answer))
}
fun runQuiz() {
for (q in questions) {
println(q.text)
println("Cevap: ${q.answer}")
}
}
fun main() {
addQuestion("Başkent hangi ülke?", "Türkiye")
addQuestion("2+2 kaç?", "4")
runQuiz()
}Beklenen çıktı
Başkent hangi ülke? Cevap: Türkiye 2+2 kaç? Cevap: 4
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 <code>runQuiz</code> fonksiyonu soruları gezmek için ne kullanır?
List iteration in Kotlin is done with for (element in list).- while ve index
- do-while
- recursion
- for (q in questions) Doğru cevap
Açıklama: for (q in questions) ile her soru sırayla gezilir.
2 runQuiz parçalarını eşle
| Kavram | Anlamı |
|---|---|
fun runQuiz() |
Fonksiyon imzası |
for (q in questions) |
Liste döngüsü |
q.text |
Soru metni |
q.answer |
Doğru cevap |
3 runQuiz döngüsünü tamamla
fun runQuiz() {
for (q in ____) {
println(q.text)
println("Cevap: ${q.answer}")
}
}
fun runQuiz() {
for (q in questions) {
println(q.text)
println("Cevap: ${q.answer}")
}
}
Açıklama: for (q in questions) ile liste gezilir.