CodeBlanks Logo Icon CodeBlanks

Quiz modeli

Question ve Quiz sınıflarının iskeletini tasarlarsın.

Quiz modeli

Bu beş derslik projede bir Quiz uygulaması yapacaksın. Her derste bir parça ekleyecek, son derste çalışan bir uygulama elde edeceksin.

Önce Question yapısını (struct) tanımlayalım. Bir sorunun metni ve cevabı vardır: struct Question { std::string text; std::string answer; };. Sonra boş bir Quiz sınıfı tanımlarız. Sonraki derslerde içine soru ekleme, quiz oynatma ve skor hesaplama metotları ekleyeceğiz. Her dersin başlangıç kodu önceki dersin çözümünü içerecek.

Struct ve class

Bu projede hem struct hem class kullanacağız. Question bir yapı (struct) olarak basit veri tutar; Quiz ise davranış içeren bir sınıftır.

İlk ders sadece iskeleti hazırlar: Question yapısını ve boş Quiz sınıfını tanımlarsın. main içinde std::cout << "Quiz hazır"; yazarak programın çalıştığını doğrularsın. Sonraki derslerde bu iskeletin üzerine metot ekleyeceğiz ve çıktı her ders büyüyecek.

Uygulama Question ve Quiz iskeletini tanımla

Question yapısı tanımla; std::string text; ve std::string answer; üye değişkenleri ekle. Boş gövdeli Quiz sınıfı tanımla. main içinde std::cout << "Quiz hazır"; yaz.

Başlangıç kodu

main.cpp
#include <iostream>
#include <string>

// Question yapısını ve Quiz sınıfını tanımla

int main() {
    // Quiz hazır mesajını yazdır
    return 0;
}

Örnek çözüm

main.cpp
#include <iostream>
#include <string>

struct Question {
    std::string text;
    std::string answer;
};

class Quiz {
};

int main() {
    std::cout << "Quiz hazır";
    return 0;
}

Beklenen çıktı

Quiz hazır

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Question yapısında hangi alanlar bulunur?

main.cpp
struct Question { ??? };
  • title ve author
  • name ve age
  • id ve email
  • text ve answer Doğru cevap

Açıklama: Question yapısı text ve answer alanlarını içerir.

2 Question yapısını tamamla

Soru
struct Question { std::string ____; std::string answer; };
Cevap
struct Question { std::string text; std::string answer; };

Açıklama: Soru metni text alanında tutulur.

3 Bileşeni rolüne eşle

Kavram Anlamı
struct Question Veri yapısı
class Quiz Davranış sınıfı
std::string Metin türü
std::cout Çıktı yazma

Orta seviye bölümündeki tüm dersler