İçeriği atlamak için "Enter"'a basın

Helvacı Satış Programı

Programlama Dilleri I dersinde hocamızın yaklaşık 3 hafta önce ödev olarak verdiği Helvacı Programının kodları aşağıdadır. Proje olarak indirmek isterseniz: http://www.mediafire.com/?jtiuntjyzli
Her programın olduğu gibi bu programın da sadece tek bir çözüm yolu yoktur. Farklı şekillerde de yapılabilir. Kodları istediğiniz gibi düzenleyebilir, istediğiniz kodları ekleyip çıkartabilirsiniz. Zaten kodları incelediğinizde bir kaç satır kodun eksik olduğunu göreceksiniz. En çok satış yapılan şehirin kodlarını yazmadım, orasını size bıraktım :) Buradaki kodlar C# ile iki boyutlu dizilerin kullanımını öğrenmenize yardımcı olacaktır.

Kodlar:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
 
namespace helvaci
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
 
        int[,] satisTablosu = new int[3, 5];
        int satici = 0, sehir = 0, aliToplamSatis = 0, huseyinToplamSatis = 0, nuriToplamSatis = 0, manisaToplamSatis = 0, izmirToplamSatis = 0, aydinToplamSatis = 0, balikesirToplamSatis = 0, canakkaleToplamSatis = 0;
 
        private void Form1_Load(object sender, EventArgs e)
        {
            txtSatisMiktari.Text = "0";
            radioButton1.Checked = true;
            comboBox1.SelectedIndex = 0;
            //tabloyu sıfırlayalım
            for (int i = 0; i < 3; i++)
                for (int k = 0; k < 5; k++)
                    satisTablosu[i, k] = 0;
            //tablomuzu yenileyelim
            tabloyuYenile();
        }
 
        void tabloyuYenile()
        {
            //Ali ATAK'ın yaptığı toplam satış
            aliToplamSatis = 0;
            for (int i = 0; i < 5; i++)
                aliToplamSatis += satisTablosu[0, i];
 
            //Hüseyin BİLİR'in yaptığı toplam satış
            huseyinToplamSatis = 0;
            for (int i = 0; i < 5; i++)
                huseyinToplamSatis += satisTablosu[1, i];
 
            //Nuri ALÇO'nun yaptığı toplam satış
            nuriToplamSatis = 0;
            for (int i = 0; i < 5; i++)
                nuriToplamSatis += satisTablosu[2, i];
 
            //******************
 
            //Manisadaki toplam satış
            manisaToplamSatis = 0;
            for (int i = 0; i < 3; i++)
                manisaToplamSatis += satisTablosu[i, 0];
 
            //İzmir ...
            izmirToplamSatis = 0;
            for (int i = 0; i < 3; i++)
                izmirToplamSatis += satisTablosu[i, 1];
 
            //Aydın ...
            aydinToplamSatis = 0;
            for (int i = 0; i < 3; i++)
                aydinToplamSatis += satisTablosu[i, 2];
 
            //Balıkesir ...
            balikesirToplamSatis = 0;
            for (int i = 0; i < 3; i++)
                balikesirToplamSatis += satisTablosu[i, 3];
 
            //Çanakkale ...
            canakkaleToplamSatis = 0;
            for (int i = 0; i < 3; i++)
                canakkaleToplamSatis += satisTablosu[i, 4];
 
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            satisTablosu[satici, sehir] = Convert.ToInt32(txtSatisMiktari.Text);
            tabloyuYenile();
            MessageBox.Show("Ekleme başarılı", "BİLGİ", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
 
        private void radioButton1_CheckedChanged(object sender, EventArgs e)
        {
            satici = 0;
        }
 
        private void radioButton2_CheckedChanged(object sender, EventArgs e)
        {
            satici = 1;
        }
 
        private void radioButton3_CheckedChanged(object sender, EventArgs e)
        {
            satici = 2;
        }
 
        private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
        {
            sehir = comboBox1.SelectedIndex;
        }
 
        private void comboBox2_SelectedIndexChanged(object sender, EventArgs e)
        {
            switch (comboBox2.SelectedIndex)
            {
                case 0:
                    //Her satıcının yaptığı toplam satış?
                    label5.Text = "Ali ATAK: " + aliToplamSatis.ToString() + "\r";
 
                    label5.Text += "Hüseyin BİLİR: " + huseyinToplamSatis.ToString() + "\r";
 
                    label5.Text += "Nuri ALÇO: " + nuriToplamSatis.ToString();
 
                    break;
                case 1:
                    //Her şehirde toplam ne kadar satıldı?
                    label5.Text = "Manisa: " + manisaToplamSatis.ToString() + "\r";
 
                    label5.Text += "İzmir: " + izmirToplamSatis.ToString() + "\r";
 
                    label5.Text += "Aydın: " + aydinToplamSatis.ToString() + "\r";
 
                    label5.Text += "Balıkesir: " + balikesirToplamSatis.ToString() + "\r";
 
                    label5.Text += "Çanakkale: " + canakkaleToplamSatis.ToString() + "\r";
                    break;
                case 2:
                    //En iyi satıcı kim? (eşitlik durumunun olmadığı varsayılır)
                    if ((aliToplamSatis > huseyinToplamSatis) && (aliToplamSatis > nuriToplamSatis))
                        label5.Text = "En iyi satıcı Ali ATAK";
                    else if ((huseyinToplamSatis > aliToplamSatis) && (huseyinToplamSatis > nuriToplamSatis))
                        label5.Text = "En iyi satıcı Hüseyin BİLİR";
                    else if ((nuriToplamSatis > aliToplamSatis) && (nuriToplamSatis > huseyinToplamSatis))
                        label5.Text = "En iyi satıcı Nuri ALÇO";
                    break;
                case 3:
                    //En çok satış yapılan şehir? (eşitlik durumunun olmadığı varsayılır)
 
                    break;
                case 4:
                    //Toplam satış?
                    label5.Text = "Toplam satış: " + (aliToplamSatis + huseyinToplamSatis + nuriToplamSatis).ToString();
                    break;
            }
        }
    }
}

İlk Yorumu Siz Yapın

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir