private void btnBitir_Click(object sender, EventArgs e) { mnuSinavBasla.Enabled = true; mnuSoruHazirla.Enabled = true; grpSinav.Enabled = false; // Son sorunun cevabını burada kaydetmemiz gerekiyor. // Çünkü sonraki butonu gizlenmiş durumda.. Cevap cevap = SinavCevaplar[Sayac - 1]; foreach (Control control in grpSinav.Controls) { if (control is RadioButton) { RadioButton rdb = (RadioButton)control; if (rdb.Checked) { cevap.SoruCevap = rdb.Tag.ToString(); // Kullanıcının verdiği cevabı aldık, // diğer kontrollerde dönmeye gerek yok artık.. break; } } } SinavTemizle(); SonuclariHesapla(); }
private void mnuSinavBasla_Click(object sender, EventArgs e) { grpSinav.Enabled = true; mnuSoruHazirla.Enabled = false; mnuSinavBasla.Enabled = false; btnSonraki.Visible = true; Sayac = 0; SinavCevaplar.Clear(); for (int i = 0; i < Sorular.Count; i++) { Cevap cevap = new Cevap(); cevap.Index = i; cevap.SoruCevap = ""; SinavCevaplar.Add(cevap); } if (Sorular.Count > 0) { SiradakiSoruyuVer(); } else { MessageBox.Show("Sınav yapılacak soru tanımlanmamıştır."); } }
private void SonuclariHesapla() { int dogruSayisi = 0; int yanlisSayisi = 0; int bosSayisi = 0; foreach (Soru soru in Sorular) { int index = Sorular.IndexOf(soru); Cevap cevap = SinavCevaplar[index]; // doğru cevabı bilmiş. if (soru.DogruCevap == cevap.SoruCevap) { dogruSayisi++; } // Boş geçmiş.. if (cevap.SoruCevap == "") { bosSayisi++; } // Bir cevabı var ama doğru değil. if (cevap.SoruCevap != "" && cevap.SoruCevap != soru.DogruCevap) { yanlisSayisi++; } } MessageBox.Show( "Doğru Cevap Sayısı : " + dogruSayisi.ToString() + "\n" + "Yanlış Cevap Sayısı : " + yanlisSayisi.ToString() + "\n" + "Boş Cevap Sayısı : " + bosSayisi.ToString()); }
private void btnSonraki_Click(object sender, EventArgs e) { Cevap cevap = SinavCevaplar[Sayac - 1]; foreach (Control control in grpSinav.Controls) { if (control is RadioButton) { RadioButton rdb = (RadioButton)control; if (rdb.Checked) { cevap.SoruCevap = rdb.Tag.ToString(); // Kullanıcının verdiği cevabı aldık, // diğer kontrollerde dönmeye gerek yok artık.. break; } } } SinavTemizle(); SiradakiSoruyuVer(); }