Aöf vize final not hesaplayıcı

Anadolu Üniversitesi Açık Öğretim Fakülte öğrencisini daha çok ilgilendiren bir program ile merhaba. Hali hazırda Aöf Vize-Final not hesaplama programını buradan indirebilirsiniz.

Aöf vize-final not sistemi; 100 üzerinden alınan puanın, vizenin %30’u ile finalin %70′ nin toplamı 50 puanı geçmek koşulu ile dersden geçilebilmekte. Bundan dolayı uygulamamız vize notu olarak girilen değeri %30’unu alarak finalden alman gereken minimum not ve doğru cevaplanması gereken soru miktarını vermekte.

Kullanıcı tarafını atlattıktan sonra yazılımcı tarafından devam edelim. Bu mini not hesaplama uygulamasını C sharp ile yapabilmek için bir adet textbox, 3 adet buton, tasarımı biraz görselleştirmek için ise 2-3 adet timer. Form tasarımını resimdeki veya uygulamayı indirerek benzerini yaptıktan sonra kod kısmına geçebiliriz;
[cc lang=”c#”] private void Form1_Load(object sender, EventArgs e)
{
timer1.Start();
dogru.Enabled = false;
puan.Enabled = false;

}

private void button1_Click(object sender, EventArgs e)
{
try
{
double vize;
vize = Convert.ToDouble(textBox1.Text);
double sonuc;
double soru;
if (vize <= 100) { sonuc = Math.Floor((50 - vize * 0.3) / 0.7); // sonucu yuvarlamak için math.floor ve math celling fonksiyonunu kullandık soru = Math.Ceiling(sonuc / 3.3); label2.Text = sonuc.ToString(); label3.Text = soru.ToString(); dogru.Enabled = true; puan.Enabled = true; } else { MessageBox.Show("Hata!!! Lütfen Geçerli Bir Not Giriniz..."); textBox1.Clear(); label2.Text = "--"; label3.Text = "--"; dogru.Enabled = false; puan.Enabled = false; } } catch { MessageBox.Show("Hata!!! \n\nLütfen Notunuzu Rakamsal Değer ile Girin\n\nÖrnek: \" 65 \" gibi... "); textBox1.Clear(); } } private void button2_Click(object sender, EventArgs e) { timer2.Enabled = true; textBox1.Clear(); label2.Text = "--"; label3.Text = "--"; dogru.Enabled = false; puan.Enabled = false; } private void button3_Click(object sender, EventArgs e) { Application.Exit(); //programdan çık } private void timer1_Tick(object sender, EventArgs e) { Opacity += 0.10; this.Opacity = Opacity; if (Opacity > 1.0)
{

timer1.Enabled = false;

}
}

private void timer2_Tick(object sender, EventArgs e)
{
if (timer2.Interval<101) { timer2.Interval+=20; int c = 0; Random r = new Random(); Point l = this.Location; while (c < 50) { int sag = r.Next(1, 5); int sol = r.Next(1, 5); this.Location = new Point(l.X + sag, l.Y + sol); c++; } this.Location = l; } else { timer2.Enabled = false; // timer2 durdu timer2.Interval = 10; } }[/cc] Burada Math.Floor ve fonksiyonları ile alınan notu daha doğru yazdırabilmek için çıkan sonucu yuvarladık. Uygulama sonuç olarak button1_Click içerisinde yapılan kodlamalardan ibaret. Diğerleri opsiyonel olarak yapılmış görsel özellikleri.(formun yavaş yavaş açılması, form titremesi, temizleme vs.)

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir