Delphi Vize Final Not Hesaplaması
Delphi vize final not hesaplaması yapan program kodlarını vermekle kalmayıp detaylıca anlatarak bu konuda kendinizi geliştirmeniz için sizlere destek olmak istiyoruz. Vereceğimiz kodlar basit şekilde değil hata kontrolleri yapacak şekilde yazılmıştır sizlerinde kendi yazacağınız programlarda bu tarz mantıksal hatalara yer vermemenizi tavsiye ediyoruz 🙂
Kodlar sayfanın altındadır lütfen kodları direkt olarak kopyala yapıştır yapmadan mantığını
anlamak ve öğrenmek için detaylı kod anlatımını okuyunuz 🙂
Delphi vize final not hesaplaması programından görüntüler :
procedure TForm1.Button1Click(Sender: TObject); var vizenotu,finalnotu,hata: integer; vizeyuzdesi,finalyuzdesi,puan :real; begin hata:=0; vizenotu:= strtoint(edit1.Text); finalnotu:= strtoint(edit2.Text); vizeyuzdesi:=strtofloat(edit3.Text)/100; finalyuzdesi:=strtofloat(edit4.Text)/100; if (finalyuzdesi+vizeyuzdesi >1) then begin hata:=hata+1; showmessage('Yüzdelerin toplamı 100ün üstünde olamaz'); end; if (finalnotu > 100) or (vizenotu >100) then begin hata:=hata+1; showmessage('100ün üzerinde puan alamazsınız.') ; end; if hata = 0 then begin puan:=(round(vizenotu*vizeyuzdesi)+round(finalnotu*finalyuzdesi)); showmessage('Notunuz : '+floattostr(puan)); end; end;
Delphi Vize Final Not Hesaplaması Kodlarının Detaylı Anlatımı
2 ve 3. satırlarda değişkenlerimizi tanımladık yüzde alma işlemi olduğu için real değişkenini kullandık.
5.satırda hata kontrolü yapmak adına hata değişkeni oluşturduk. Değişkenin içine 0 değeri verdik daha sonra bu değişkene ekleme yaparak hata kontrolü yapmış sayılacağız. Bu işlem iç içe if mantığının yerine tercih ettiğimiz bir mantık .
6-7. satırlarda kullanıcıdan veri alacağımız edit1 ve edit2 nesnelerini kolaylık olsun diye integer değişkenlere atadık.
8-9. satırda edit3 ve edit4 de girilecek olan yüzdeleri 100e bölerek daha sonra yüzde olma işleminde kullanmak üzere float değişkenlere atadık.
10-14. satırlarda hata kontrolümüzü yaptırdık. Oradaki amaç %100 ün üstünde bir değer olamayacağını belirtmek biz direk ondalık sayı olarak aldığımız için oradaki 1 den büyük olamaz ile 100 den büyük olamaz demek aynı şey. Eğer bu konuda hata varsa hata değişkenini 1 arttırdık ve mesaj olarak hatayı belirttik.
15-19. satırlarda girilen notların 100 den büyük olup olmadığını kontrol ettik. Büyük olma durumda hata değişkenini 1 arttırdık.
20-24. satırlarda hata değişkeni 0 ise hata olmadığı anlamıyor geliyor. Puan değişkenine matematiksel işlem yaparak vize final ortalamasını yazdırdık. Showmessage ile ortalamayı kullanıcıya gösterdik. 0’dan farklı olursa da program sonuç vermiyor.
Teşekkür ederim sınavdan iyi not aldım tamda bu konu çıktı
hocam hata değişkeni yerine iç içe if yapılamaz mıydı ?
Sayın berke yazılım sonsuz ve kalıpsız bir olay o yöntemi kullanarak da yazabilir. Her yiğidin kod yazışı farklıdır 🙂