Visual Basic Vize Final Notuna Göre Sonuç Hesaplama
Bu visual basic örneğimizde klavyeden girilen vize ve final notuna göre öğrencinin ortalamasını ve bu ortalamanın harf olarak hangi harf sistemine karşılık geldiğini bulup ekrana yazdırıyoruz.
Öncelikle öğrenci numarası alanına sadece rakam girişi yapabilmek için gerekli numerik kodunu yazıyoruz. Daha sonra öğrencinin adını ve soyadını giriyoruz. Vize ve final notunu girdikten sonra vizenin %40 ve final notunun %60 oranında alarak ortalamasını hesaplatıyoruz. Son olarak elde edilen ortalamanın harf sistemindeki karşılığını bularak harf şeklinde yazdırıyoruz.
Vize ve final alanlarının boş geçilmesi yada rakam dışında giriş yapılması durumunda uyarı mesajı ile kullanıcının doğru giriş yapması konusunda ikaz ediliyor.
Programın ekran görüntüleri:
Programın Visual Basic Kodları:
Public Class Form1 'www.bilisimkonulari.com Dim vize, final As Integer Dim gecme As Double Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 'www.bilisimkonulari.com End Sub Private Sub TextBox5_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox5.TextChanged 'Final notunun girildiği metin kutusu değişirken… If Txt_Final.Text <> "" And IsNumeric(Txt_Final.Text) Then 'Eğer final metin kutusu dolu ve sayısal veri ise… If Txt_Final.Text > 100 Then 'Eğer girilen final değeri 100 den büyük ise… MsgBox("Hatalı Giriş!") Txt_Final.Clear() TxtGecme.Clear() TxtHarf.Clear() TxtGecme.BackColor = Color.White Else 'Aksi halde, yani final 100 den küçük… If Txt_Vize.Text <> "" And IsNumeric(Txt_Vize.Text) Then vize = Txt_Vize.Text final = Txt_Final.Text gecme = 2 * vize / 5 + 3 * final / 5 'vizenin %40’ı + finalin %60’ı TxtGecme.Text = gecme If gecme >= 50 Then TxtGecme.BackColor = Color.GreenYellow Else TxtGecme.BackColor = Color.Red End If End If Else 'Ya final alanı boş, ya da girilen değer sayısal değil. TxtGecme.Clear() TxtHarf.Clear() TxtGecme.BackColor = Color.White End If End Sub Private Sub Txt_Vize_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Txt_Vize.TextChanged 'Aynı şeyler vize notu için de yapılıyor. If Txt_Vize.Text <> "" And IsNumeric(Txt_Vize.Text) Then If Txt_Vize.Text > 100 Then MsgBox("Hatalı Giriş!") Txt_Vize.Clear() TxtGecme.Clear() TxtHarf.Clear() TxtGecme.BackColor = Color.White Else If Txt_Final.Text <> "" And IsNumeric(Txt_Final.Text) Then vize = Txt_Vize.Text final = Txt_Final.Text gecme = 2 * vize / 5 + 3 * final / 5 TxtGecme.Text = gecme If gecme >= 50 Then TxtGecme.BackColor = Color.GreenYellow Else TxtGecme.BackColor = Color.Red End If End If Else TxtGecme.Clear() TxtHarf.Clear() TxtGecme.BackColor = Color.White End If 'www.bilisimkonulari.com End Sub Private Sub TxtGecme_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TxtGecme.TextChanged 'Geçme notu alanı değişirken harf notu hesaplanıyor. If TxtGecme.Text <> "" Then If TxtGecme.Text >= 90 Then TxtHarf.Text = "AA" ElseIf TxtGecme.Text >= 80 Then TxtHarf.Text = "BA" ElseIf TxtGecme.Text >= 70 Then TxtHarf.Text = "BB" ElseIf TxtGecme.Text >= 60 Then TxtHarf.Text = "CB" ElseIf TxtGecme.Text >= 50 Then TxtHarf.Text = "CC" ElseIf TxtGecme.Text >= 40 Then TxtHarf.Text = "DC" ElseIf TxtGecme.Text >= 30 Then TxtHarf.Text = "DD" ElseIf TxtGecme.Text >= 20 Then TxtHarf.Text = "FD" Else TxtHarf.Text = "FF" End If End If 'www.bilisimkonulari.com End Sub End Class
<< Önceki Yazı
Sonraki Yazı >>