15 Haziran 2013 Cumartesi

Bir çalışanın ay sonunda aldığı maaş ve yardımı hesaplayan program - Csharp

Soru:

Bir çalışanın ay sonunda aldığı maaş yardımı hesaplayınız. Öncelikle çalışanın maaşını alınız. Maaşı aldıktan sonra aşağıdaki kriterlere göre yardım alıp almayacağını, eğer yardım alıyorsa toplam maaşını hesaplayınız.
Programın kriterleri;
  • Çalışanın evli ve eşi çalısıyorsa maaş yardımı alamasın. Maaşı onun toplam maaşı olsun.
  • Çalışan evli değil ise maaş yardımı alamasın. Maaşı onun toplam maaşı olsun.
  • Çalışan evli fakat eşi çalışmıyor ise ve çalışanın çocuk sayısı 5’ten fazla ise çocuk sayısını 5 olarak sayıp,çocuk başına 100 tl yardım alıp bu yardımı maaş ekleyin
  • Çalışan evli fakat eşi çalışmıyor ise ve çalışanın çocuk sayısı 2’ten fazla ve 5’ten az ise çocuk başına 75 tl yardım alıp bu yardımı maaş ekleyin
  • Çalışan evli fakat eşi çalışmıyor ise ve çalışanın çocuk sayısı 1 veya 2 ise çocuk başına 50 tl yardım alıp bu yardımı maaş ekleyin
Programın çıktısı olarak aldığı yardım mikarını ve yardımlar dahil aldığı toplam maaşı kullanıcıya gösteren programı yapınız.

Windows Formu Hazırlarken: 2 textbox, 2 combobox,1 buton,6 label ekliyoruz.
Uygulamada; Genelde if-else yapısı kullanıldı.

Çözümü:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace uygulama4
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
       
        private void btnHesapla_Click(object sender, EventArgs e)
        {
            int maas = Convert.ToInt32(txtMaas.Text);
            int toplamMaas = 0;
            int yardim;
            if (cbEvlilikDurumu.SelectedItem == "Evli" && cbEsIsDurumu.SelectedItem == "Çalışıyor")
            {
                label5.Text = "ekstradan yardım alamaz";
                label6.Text = maas.ToString();
            }

            else if (cbEvlilikDurumu.SelectedItem == "Bekar")
            {
                label5.Text = "ekstradan yardım alamaz";
                label6.Text = maas.ToString();
            }

            else if (cbEvlilikDurumu.SelectedItem == "Evli" && cbEsIsDurumu.SelectedItem == "Çalışmıyor")
            {
                int CocukSayisi = Convert.ToInt32(txtCocukSayisi.Text);
                if (CocukSayisi > 5)
                {
                    CocukSayisi = 5;
                     yardim = CocukSayisi * 100;
                    label5.Text = yardim.ToString();
                    toplamMaas = yardim + maas;
                    label6.Text = toplamMaas.ToString();

                }
                else if(CocukSayisi>2&&CocukSayisi<5)
                {
                    yardim = CocukSayisi * 75;
                    label5.Text = yardim.ToString();
                    toplamMaas = yardim + maas;
                    label6.Text = toplamMaas.ToString();
                }

                else if (CocukSayisi > 1 || CocukSayisi <=2)
                {
                    yardim = CocukSayisi * 50;
                    label5.Text = yardim.ToString();
                    toplamMaas = yardim + maas;
                    label6.Text = toplamMaas.ToString();
                }


            }


        }
    }
}
Kod Açıklaması: 
int maas = Convert.ToInt32(txtMaas.Text);
            int toplamMaas = 0;
            int yardim;
Öncelikle biz kullanıcıdan kişinin maaşını alıyoruz ve bunu textbox'tan aldığımız için convert.ToInt32 metodu ile integer bir değişkene çevirdik. Tabii işlmlerin en sonunda yardım ve toplam maaşı hesaplıyacağımız için bunların tutulacağı değişkenleri başta tanımladık. değişken isimlerinden de anlaşılıyor hangi değişkenin neyi tutacağı.

 if (cbEvlilikDurumu.SelectedItem == "Evli" && cbEsIsDurumu.SelectedItem == "Çalışıyor")
            {
                label5.Text = "ekstradan yardım alamaz";
                label6.Text = maas.ToString();
            }
Soruda bizden çalışan eğer evli ve eşi çalısıyorsa sartı vardı. Şart varsa biz orada if yapısını kullanırız. If yapısı ile kontrol ediyoruz. eğer combobox(evlilik durumunun tutulduğu)'tan seçilen item(veri,değer) Evli'ye eşitse yani o kişinin evlilik durumu evliyse  &&(ve) Kişinin eşinin iş durmunu yine combobox'tan çalışıyor şeçildiyse
ne oluyordu bu kişi yardım alamıyordu. Hemen label'a bu kişi yardım alamaz yazalım veya aldığı yardım 0'da yazılabilir. Yardım alamadığına göre bu kişinin maaşı ilk başta textbox'a girdiğimiz ve bunu integer değere çevirip atadığımız maaş değişkenine eşittir. Bu değişkenin tuttuğu değeri label'a yazdırıyoruz.

else if (cbEvlilikDurumu.SelectedItem == "Bekar")
            {
                label5.Text = "ekstradan yardım alamaz";
                label6.Text = maas.ToString();
            }
Diğer bir olasılığımız kişi bekar'sa ne olacak bu kişi maas yardımı alamıyacak ve ilk girilen değer kadar maaşı olacak. İkinci bir olasılıgımız açık bir şekilde belirtildiği için else if (combobox'tan evlilik durumunu bekar seçili ise) sartımız doğrudur.

 else if (cbEvlilikDurumu.SelectedItem == "Evli" && cbEsIsDurumu.SelectedItem == "Çalışmıyor")
            {
                int CocukSayisi = Convert.ToInt32(txtCocukSayisi.Text);
                if (CocukSayisi > 5)
                {
                    CocukSayisi = 5;
                     yardim = CocukSayisi * 100;
                    label5.Text = yardim.ToString();
                    toplamMaas = yardim + maas;
                    label6.Text = toplamMaas.ToString();

                }
diğer bir olasılığımız ise kişi evli olacak ve eşi çalışmıyor olacak. Bu şart doğru ise sıra kişinin çocuk sayısına bakmaya geldi. Textbox'tan kişinin çocuk sayısını convert metodunu kullanarak integer'a çevirdik ve cocuksayisi değişkenine atadık bu sayıyı. Bu işlemden sonra bir şartımız daha vardı. Diyorduki eğer çocuk sayısı 5'ten fazla ise bu sayıyı 5'te sabitleyin. Bunu if(cocuk sayisi>5) ile kontrol ettik. Sart doğru ise cocuksayisi=5 yaptık. Yani kişinin 10 cocugu olsa bile 5'e eşitledik. Sonra cocuk başına kişi 100 tl yardım alıyor. Hemen cocuksayisi ile 100 çarpıp kişinin alacağı yardımı bulduk. Bu yardımı tostring'e çevirerek label'a yazdırdık. Çünkü label'lar string tipinde verileri tutar ancak. Toplam maaş ne olur peki kişinin alacağı yardım+ilk başta girilen maaş kişinin toplam maasıdır. Bunuda string'e çevirip label'a yazdırdık.

else if(CocukSayisi>2&&CocukSayisi<5)
                {
                    yardim = CocukSayisi * 75;
                    label5.Text = yardim.ToString();
                    toplamMaas = yardim + maas;
                    label6.Text = toplamMaas.ToString();
                }
diğer bir olasılığımız çocuk sayısı 2'den fazla olacak ama 5'ten az olacak. Hemen bunu if yapısı ile kontrol ettik. Şartımız doğru ise cocuksayisi değişkeni ile 75 tl'yi çarparak kişinin alacağı yardımı bulduk. SOnra bununla maaşı toplayıp toplam maaşı bulduk.

 else if (CocukSayisi > =1 || CocukSayisi <=2)
                {
                    yardim = CocukSayisi * 50;
                    label5.Text = yardim.ToString();
                    toplamMaas = yardim + maas;
                    label6.Text = toplamMaas.ToString();
                }

diğer bir olasılığımız çocuk sayısı 1 veya 2 ise. Hemen bunu if yapısı ile kontrol ettik. Şartımız doğru ise cocuksayisi değişkeni ile 50 tl'yi çarparak kişinin alacağı yardımı bulduk. SOnra bununla maaşı toplayıp toplam maaşı bulduk.

Uygulamayı buradan indirebilirsiniz: https://hotfile.com/dl/228005874/735dcb5/uygulama4.rar.html

Hiç yorum yok :

Yorum Gönder

Google PageRank Checker Powered by  MyPagerank.Net