GİRİŞ
Bu yazımda Visual Basic ile gelişmiş bir hesap makinesi yapmaya çalıştık. Rakamlar ve işlemlerle Windows işletim sisteminin hesap makinesini örnek alarak basit bir bölümünü kodladık.
Yeni başlayanlar için hem basit hemde orta seviyeler için iyi bir uygulama olduğunu düşünüyorum. Projede if else ve case durum yapısını kullanıldı bol bol örnekli ve açıklamalı olduğundan güzel ve temel örnek içeriyor. Bunlara ek olarak 2 tane önemli fonksiyonu gösterdim bunlardan biri instr bu fonksiyon yardımıyla metin içinde arama yaparak istediğimiz karakteri veya kelimeyi bulma şansına sahibiz. İkinci fonksiyon ise replace komutu bununlada metin içindeki karakter veya kelimeleri başka bir kelimeyle değiştirme şansına sahibiz.
Lütfen Kaynak Göstermeden Paylaşmayınız
Dosya olarak indir
Şifre : bocekprogramlama.blogspot.com
Public Class Form1
''bu bölümden * lı bölüme kadar rakamları label1 e eklemek üstünedir
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
If Label1.Text = "0" Then
Label1.Text = "9"
Else
Label1.Text = Label1.Text + "9"
End If
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
If Label1.Text = "0" Then
Label1.Text = "8"
Else
Label1.Text = Label1.Text + "8"
End If
End Sub
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
If Label1.Text = "0" Then
Label1.Text = "7"
Else
Label1.Text = Label1.Text + "7"
End If
End Sub
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
If Label1.Text = "0" Then
Label1.Text = "4"
Else
Label1.Text = Label1.Text + "4"
End If
End Sub
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
If Label1.Text = "0" Then
Label1.Text = "5"
Else
Label1.Text = Label1.Text + "5"
End If
End Sub
Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
If Label1.Text = "0" Then
Label1.Text = "6"
Else
Label1.Text = Label1.Text + "6"
End If
End Sub
Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
If Label1.Text = "0" Then
Label1.Text = "1"
Else
Label1.Text = Label1.Text + "1"
End If
End Sub
Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click
If Label1.Text = "0" Then
Label1.Text = "2"
Else
Label1.Text = Label1.Text + "2"
End If
End Sub
Private Sub Button9_Click(sender As Object, e As EventArgs) Handles Button9.Click
If Label1.Text = "0" Then
Label1.Text = "3"
Else
Label1.Text = Label1.Text + "3"
End If
End Sub
Private Sub Button10_Click(sender As Object, e As EventArgs) Handles Button10.Click
If Label1.Text = "0" Then
Label1.Text = "0"
Else
Label1.Text = Label1.Text + "0"
End If
End Sub
Private Sub Button17_Click(sender As Object, e As EventArgs) Handles Button17.Click
Label1.Text = "0"
End Sub
Private Sub Button18_Click(sender As Object, e As EventArgs) Handles Button18.Click
Label1.Text = "0"
temp1.Text = ""
temp2.Text = ""
tur.Text = ""
End Sub
''*********************
'' Bu bölümde instr ile pozitif veya negatif yapıyoruz sayıyı
Private Sub Button11_Click(sender As Object, e As EventArgs) Handles Button11.Click
Dim kntrl = InStr(Label1.Text, ",")
If kntrl < 1 Then
Label1.Text = Label1.Text + ","
End If
End Sub
'' Bu bölgede sonuç bulma işlemini yaptık
Private Sub Button20_Click(sender As Object, e As EventArgs) Handles Button20.Click
Select Case tur.Text
Case Is = "+"
temp2.Text = Label1.Text
Label1.Text = Val(temp1.Text) + Val(temp2.Text)
temp2.Text = ""
temp1.Text = ""
Case Is = "-"
temp2.Text = Label1.Text
Label1.Text = Val(temp1.Text) - Val(temp2.Text)
temp2.Text = ""
temp1.Text = ""
Case Is = "*"
temp2.Text = Label1.Text
Label1.Text = Val(temp1.Text) * Val(temp2.Text)
temp2.Text = ""
temp1.Text = ""
Case Is = "/"
temp2.Text = Label1.Text
Label1.Text = Val(temp1.Text) / Val(temp2.Text)
temp2.Text = ""
temp1.Text = ""
End Select
End Sub
'' bu bölgede işlemler için gereken butonları kullanıyoruz
Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click
Dim kntrl = InStr(Label1.Text, "-")
If kntrl < 1 Then
Label1.Text = "-" + Label1.Text
Else
Label1.Text = Replace(Label1.Text, "-", "")
End If
End Sub
Private Sub Button16_Click(sender As Object, e As EventArgs) Handles Button16.Click
If temp1.Text = "" Then
temp1.Text = Label1.Text
Label1.Text = "0"
tur.Text = "+"
Else
temp2.Text = Label1.Text
Label1.Text = Val(temp1.Text) + Val(temp2.Text)
temp2.Text = ""
temp1.Text = ""
End If
Private Sub Button12_Click(sender As Object, e As EventArgs) Handles Button12.Click
If temp1.Text = "" Then
temp1.Text = Label1.Text
Label1.Text = "0"
tur.Text = "-"
Else
temp2.Text = Label1.Text
Label1.Text = Val(temp1.Text) - Val(temp2.Text)
temp2.Text = ""
temp1.Text = ""
End If
End Sub
Private Sub Button13_Click(sender As Object, e As EventArgs) Handles Button13.Click
If temp1.Text = "" Then
temp1.Text = Label1.Text
Label1.Text = "0"
tur.Text = "*"
Else
temp2.Text = Label1.Text
Label1.Text = Val(temp1.Text) * Val(temp2.Text)
temp2.Text = ""
temp1.Text = ""
End If
End Sub
Private Sub Button14_Click(sender As Object, e As EventArgs) Handles Button14.Click
If temp1.Text = "" Then
temp1.Text = Label1.Text
Label1.Text = "0"
tur.Text = "/"
Else
temp2.Text = Label1.Text
Label1.Text = Val(temp1.Text) / Val(temp2.Text)
temp2.Text = ""
temp1.Text = ""
End If
End Sub
End Class
Dosya olarak indir
Şifre : http://bocekprogramlama.blogspot.com
hocam çalışmanız için teşekkür ederim çok açıklayıcı olmuş ve sizin videonuzu takip ederek ilk defa bir program yaptım ve gayet başarılı
YanıtlaSilpeki ben mesela karekök ve yüzde lik butonunun da olmasını istiyorum çarpma bölme için verdiğiniz kodaların aynısını yüzdelik buttonu için de yazdım fakat yüzdelik işaretini tanımadı karakter tanınmadı hatasını aldım bunun için başka bir kodmu yazılması gerekiyor yoksa benmi yanlış yaptım ?
Merhaba karakök için yine bi fonksiyon kullanman gerekece framework aracılığıyla math kütüphanesinden sqrt.
YanıtlaSilÖrnek:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim sayi As Integer
Dim karekok As Double
sayi = Val(TextBox1.Text)
karekok = Math.Sqrt(sayi)
TextBox2.Text = karekok
End Sub
Yüzde işlemleri için bölme işleminde " / " bu işareti kullanman gerekir. Direk yüzde alamazsın ama sayı çarpı yüzde bölü yüz yaparsan yüzdeyi bulursun.
Örneğin:
girilen sayı 200 istenilen 10% bunu şu şekilde yaparsan sonuc çıkar
200*10/100
İyi çalışmalar :)
Link Kırık.
YanıtlaSilhttps://yadi.sk/d/vTx5Pw-UdAfCH
Sil