ASP’de basit bir şekilde, form yardımıyla 4 temel işlemi (toplama,çıkarma,çarpma,bölme) yapalım. Bu şekilde hesap makinelerini javascript,java,jquery gibi dillerde de yapabilirsiniz. Burdaki amaç basit şekilde ASP ile öğrenelim.

Öncelikle sadece HTML olarak formu yerleştireceğimiz bir giriş sayfası yapalım. Adı “HesapMakinesi.asp” olsun. Başına standart kodları koyarsınız. Direkt form kısmına gelelim.
<form action="Hesapla.asp" method="post"> <b>İlk Sayı:</b> <input type="text" name="ilksayi" /><br /> <b>İkinci Sayı:</b> <input type="text" name="ikincisayi" /><br /> <b>İşlem:</b> <select name="islem"><option value="toplama">Toplama</option><option value="cikarma">Çıkarma</option><option value="carpma">Çarpma</option><option value="bolme">Bölme</option></select><br /> <input type="submit" value="Hesapla" /> </form>
Bu şekilde formumuzu hazırladık. Burda birinci sayıyı giricek, altına ikinci sayı ve onun altından işlemi seçip hesaplaya bastığında sonucu versin. Şimdide formun gideceği “Hesapla.asp” dosyamızı yapalım.
<%
' Once formları tanimlayalim
Birinci = Cint(Request.Form("ilksayi")) 'ilksayi degerini aldik
Sonuncu = Cint(Request.Form("ikincisayi")) 'ikincisayi degerini aldik
islem = Request.Form("islem") 'hangi islemi yapacagini cektik
' Simdi kutucukları doldurmus mu kontrol edelim
If Birinci="" Then ' Eger Birinci Sayi Girilmediyse
Response.Write "<script>javascript:alert('Birinci Sayıyı Girmediğinde Vericek Hata Mesajı')</script>"
Response.Write "<br />" ' alt satira gecsin
Response.Write "<script>location='HesapMakinesi.asp'</script>" ' HesapMakinesi.asp ye gitsin
Response.End ' Sayfanın devamını gostermiyelim Cunku birinci sayi yok
End If ' Girildiyse birsey yapma
If Sonuncu="" Then ' Eger ikinci sayi girilmediyse
Response.Write "<script>javascript:alert('İkinci Sayıyı Girmediğinde Vericek Hata Mesajı')</script>"
Response.Write "<script>location='HesapMakinesi.asp'</script>" ' HesapMakinesi.asp ye gitsin
Response.End ' Sayfanın devamını gostermiyelim Cunku ikinci sayi yok
End If ' Girildiyse birsey yapma
If islem="toplama" Then 'toplama istiyorsa
Response.Write "Buraya sonuç tarzı yazmak istediğiniz yazı: "& Birinci + Sonuncu 'sayilari topla ve ekrana yaz
Response.End ' toplama istediyse gerisine bakmasin
End If ' islem toplama ise bu kismi gosterdik
If islem="cikarma" Then 'cikarma istiyorsa
Response.Write "Sonuç: "& Birinci – Sonuncu ' birinciden ikinciyi cikar ve ekrana yazdir
Response.End
End If
If islem="carpma" Then 'carpma istiyorsa
Response.Write "Sonuç: "& Birinci * Sonuncu ' sayilari carp ve ekrana yazdir
Response.End
End If
If islem="bolme" Then 'bolme istiyorsa
Response.Write "Sonuç: "& Birinci / Sonuncu ' birinciyi ikinciye bol ve ekrana yazdir
Response.End
End If
%>Yukarıda formdan gelen verileri tanımlarken Cint diye bir dönüştürücü kullandık, bu olmadan toplama işleminde sayıları yan yana yazar ve toplamaz (Mesela: Birinci Sayı 1, ikinci sayı 2 olsun, Cint kullanmadan önce toplama işleminde sonuç 12dir. Cint’i kullandığımızda sonuç 3 olucaktır).




















Asp’de yeni olduğum için yeni yeni öğreniyorum herşeyi sayenizde 🙂
Asp de pek bir bilgim yok öğrenmek isteyene büyük imkan 🙂
ödevler ödevler
Sayenizde hesap makinemi yaptım, teşekkürler !
peki mesala ben işlemi devam ettirmek istiyorum yani 2*5=10 sonucunu verdi ve ben üstüne 5 daha eklemek istiyorum işlemi devam eetirmek istiyorum onu yasıl yapabiilirim ??
İşlem sayınız sınırlı olacaksa yani örnekteki gibi bir işlemden sonra 1 tane daha işlem olacaksa çıkan sonucu bir input alanına yazdırıp işlemi tekrarlatabilirsiniz.
Veya işlemler sürekli devam etsin isterseniz işlem sonucunu ilksayi input alanına yazıp kullanıcının tekrar işlemi ve işlem yapılacak sayıyı girmesini sağlıyabilirsiniz.
Anladım İlginize Çok Teşekkür ederim ancak sizden küçük bir istirhamım olacak sadece input kodunu yazabilirmisiniz acaba ?? Çünkü yarın ödevi teslim etmem lazım yazdığınız kod çok işime yaradı size minnettarım tekrar tekrar teşekkür ederim ..
Response.Write "Sonuç" yazan yerler yerine aşağıdaki şekilde asp sonucunda
tekrar form yazırabilirsiniz. Daha kolay olması için öncelikle işlem sonucunu
ekrana yazmak yerine değişkene atayalım. Örnek olarak toplama işlemi için
yapıyorum:
<% TOPLAMA ISLEMINE KADAR OLAN KISIMLARDA DEGISIKLIK YAPMAYA GEREK YOK
If Napim=”toplama” Then ‘toplama istiyorsa
IslemSonucu = Birinci + Sonuncu ‘sayilari topla ve IslemSonucu değişkenine ata
End If ‘ islem toplama ise bu kismi gosterdik
%>
* Hesapla.asp sayfasına ilksayi input alanına value=”<%=IslemSonucu%>” ekleyerek gelen değeri otomatik birinci alana yazdırabilirsiniz.
* işlem sonuçlarında response.end ile devamını gösterme demiştik eğer response.end kaldırmazsak formu aşağıda yazmaz. Her işlem If – End If şeklinde tek tek belirtilmişti daha kolay gösterebilmek için, onun yerine If – ElseIf – End If şeklinde kullanırsanız daha sağlıklı olacaktır.
Her dildeki ilk ders 😀
Yüzde hesaplamasını nasıl yapabilirim?
Sayıyı önce 100’e bölüp ardından istediğiniz oranla çarpabilirsiniz.
Örnek olarak Sayi1 isimli değişkenin %15’i şu şekilde alınabilir: Sayi1*15/100
teşekkürler
Ondalıklı sayılar içi CDBL kullanın
1837837 bu kıyakta benden size olsun, leblebi yazarsınız
ASP günlerimi ösledim be