Eğitime destek yazı dizisinin 3. ile karşınızdayız. Bu örneğimiz biraz daha zor bir örnek. Öğrenciler bu tarz kavramları öğrendikçe algoritma kurma becerileri de bir o kadar gelişiyor. Örneğimize geçelim;

Bir satıcı ürününü 100₺’ye sattığı takdirde günde 500 adet satmaktadır. Fiyatı 5₺ artırdığında satış adedi 10 adet azalmaktadır. Acaba en yüksek kârı elde edebilmesi ve daha az ürün satıp çok yorulmaması için fiyat endeksi kaç olmalıdır? Marjinal kârı bulunuz. Bulduğunuz tüm kombinasyonları listbox’a yazdırıp marjinal kârı mesaj ile gösteriniz lütfen 😉

  • Bu tarz sorular farklı yöntemler ile döngüler ile yapılabilir. Bu sefer de while döngüsü kullanalım dedik ve kodumuzu while ile yazmaya çalıştık. Aslında for döngüsünde sonu belli olmadığı için her seferinde if ile kontrol etmek zorunda kalacaktık. Ama while döngüsünde bu durum otomatik olarak kontrol edildiğinden yani döngünün doğası bu tarz işlemlere daha uygun olduğundan tercihimiz while ile yapmak oldu…
C# Marjinal Kâr Hesaplama
  • Burada multicolumn listbox kullanılmıştır. Siz de listbox‘un farklı özelliklerini properties ekranından öğrenebilirsiniz.
private void btnKarZarar_Click(object sender, EventArgs e)
        {
            Int32 Adet = 500; // Başlangıçtaki satış adeti
            Int32 Fiyat = 100; // Başlangıçtaki satış fiyatı 
            Int32 iKar = Adet * Fiyat; // Başlangıçtaki kârımız
            Int32 EnYuksekKar = Adet * Fiyat;
            string EnYuksekKarMetni = "";

            while (Adet > 0) // Adet sıfıra düşene kadar döngü başlatılıyor.
            {
                // Önce döngünün çalışma anındaki fiyat ve adete göre karı bulunuyor ve listeye ekleniyor.
                listSatislar.Items.Add("Adet: " + Adet + " X Fiyat: " + Fiyat + " = Kar: " + (Adet * Fiyat).ToString());
                
                // Yeni kar değerimiz bulunuyor.
                iKar = Adet * Fiyat;

                // Eğerki bi önceki en yüksek kardan döngünün adımındaki kar daha büyük ise en yüksek kar değişkeni güncellenmeli.
                if (EnYuksekKar < iKar)
                {
                    EnYuksekKar = Adet * Fiyat;    

                    // En sonra message box da kullanacağımız metni değişkene atıyoruz.
                    EnYuksekKarMetni = "Adet: " + Adet + " X Fiyat: " + Fiyat + " = Kar: " + (Adet * Fiyat).ToString();
                }
                Adet = Adet - 10; // bir sonraki adıma hazırlıklar yapılıyor.
                Fiyat = Fiyat + 5; // bir sonraki adıma hazırlıklar yapılıyor.
            }
            MessageBox.Show(EnYuksekKarMetni, "Marjinal Kar Değerleriniz");
        }

Programımızın çıktısı aşağıdaki şekilde olacaktır. İyi dersler dileriz 😉

C# Marjinal Kâr Hesaplama

Yorum Yazın

E-Posta Adresiniz görüntülenmeyecektir. Zorunlu alanlar *
Yan taraftaki HTML kodları kullanarak yorum yapabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>