Selam dostlar.
Sizlere C# Form uygulamasında nasıl tek ; kullanarak 4 işlem hesap makinesi yapıldığını göstermek istiyorum. Elbette programın arkasında yüzlerce ; kullanılaraktan oluşturulan sınıflar, çağırılan kütüphaneler vs. var, amacım Visual Studio kullanarak hazır gelen sınıflar ve kütüphaneler üzerinde sadece tek ";" kullanaraktan 4 işlem hesap makinesi yapmak, daha fazla uzatmadan başlayalım.
Öncelikle "?" işaretinin ne anlama geldiğinden bahsedelim. C# da ? işareti atama sırasında koşul kullanmaya yarıyor, hemen ufak bir örnek göstereyim.
Yukarıda kodun çıktısı ise "Koşul Doğru" olacaktır.
Burada ise konsola "Eşit Değil" yazacaktır.
Biraz daha işlevsel bir örnek göstereyim, şimdi ufak bir proje yapalım, konsol uygulamasında girilen iki sayının toplamının 50'den küçük olup olmadığını gösteren program.
Normalde bunu if else ile aşağıdaki gibi kontrol edersiniz değil mi?
Buna hiç gerek yok, aşağıdaki şekilde de yapabilirsiniz. Sonuç aynı olacaktır.
Evet kabaca cSharp'da "?" ne anlama geldiğinden bahsettim, aklınıza takılan bir şey varsa yorumlarda sorabilirsiniz.
Şimdi gelelim asıl projemize, "?" kullanaraktan sadece tek ";" yazarak 4 işlem hesap makinesi yapımı. İlk olaraktan kabaca bir form ekranı oluşturdum.
Şimdi kod kısmına geçiyorum, burası biraz karışık ve dağınık olacağından maalesef anlatamayacağım, merak ettiğiniz bir yer varsa sorabilirsiniz. İlk olarak eklenen TextBox'a çift tıklayıp TextChanged Eventini açıyoruz, daha sonrası ise aşağıda yazdığım gibi;
Not: bu projeyi okulda derste sıkıldığımdan dolayı ufak bir challange gibi kendimce yaptım, sadece bunu paylaşmak istedim fazla detaylı anlatamadığım için kusura bakmayın aklınıza takılan bir şey varsa sorabilirsiniz.
Projede kullandığım kodlar;
Console (2.)
Sizlere C# Form uygulamasında nasıl tek ; kullanarak 4 işlem hesap makinesi yapıldığını göstermek istiyorum. Elbette programın arkasında yüzlerce ; kullanılaraktan oluşturulan sınıflar, çağırılan kütüphaneler vs. var, amacım Visual Studio kullanarak hazır gelen sınıflar ve kütüphaneler üzerinde sadece tek ";" kullanaraktan 4 işlem hesap makinesi yapmak, daha fazla uzatmadan başlayalım.
Öncelikle "?" işaretinin ne anlama geldiğinden bahsedelim. C# da ? işareti atama sırasında koşul kullanmaya yarıyor, hemen ufak bir örnek göstereyim.
Yukarıda kodun çıktısı ise "Koşul Doğru" olacaktır.
Burada ise konsola "Eşit Değil" yazacaktır.
Biraz daha işlevsel bir örnek göstereyim, şimdi ufak bir proje yapalım, konsol uygulamasında girilen iki sayının toplamının 50'den küçük olup olmadığını gösteren program.
Normalde bunu if else ile aşağıdaki gibi kontrol edersiniz değil mi?
Buna hiç gerek yok, aşağıdaki şekilde de yapabilirsiniz. Sonuç aynı olacaktır.
Evet kabaca cSharp'da "?" ne anlama geldiğinden bahsettim, aklınıza takılan bir şey varsa yorumlarda sorabilirsiniz.
Şimdi gelelim asıl projemize, "?" kullanaraktan sadece tek ";" yazarak 4 işlem hesap makinesi yapımı. İlk olaraktan kabaca bir form ekranı oluşturdum.
Şimdi kod kısmına geçiyorum, burası biraz karışık ve dağınık olacağından maalesef anlatamayacağım, merak ettiğiniz bir yer varsa sorabilirsiniz. İlk olarak eklenen TextBox'a çift tıklayıp TextChanged Eventini açıyoruz, daha sonrası ise aşağıda yazdığım gibi;
Not: bu projeyi okulda derste sıkıldığımdan dolayı ufak bir challange gibi kendimce yaptım, sadece bunu paylaşmak istedim fazla detaylı anlatamadığım için kusura bakmayın aklınıza takılan bir şey varsa sorabilirsiniz.
Projede kullandığım kodlar;
Console (2.)
C#:
static void Main(string[] args)
{
Console.Write("1. Sayı: "); int Num1 = int.Parse(Console.ReadLine());
Console.Write("2. Sayı: "); int Num2 = int.Parse(Console.ReadLine());
int toplam = Num1 + Num2;
string startText = "İki sayının toplamı 50'den";
Console.WriteLine();
Console.WriteLine(toplam < 50 ? $"{startText} küçük. \nToplamı: {toplam}" : $"{startText} büyük veya eşit.\nToplamı: {toplam}");
Console.ReadLine();
Console.ReadKey();
}
Form
C#:
private void textBox1_TextChanged(object sender, EventArgs e)
{
try
{
label1.Text =
textBox1.Text.Contains("+") ?
(Convert.ToInt64(textBox1.Text.Split('+')[0]) + Convert.ToInt64(textBox1.Text.Split('+')[1])).ToString() :
textBox1.Text.Contains("-") ?
(Convert.ToInt64(textBox1.Text.Split('-')[0]) - Convert.ToInt64(textBox1.Text.Split('-')[1])).ToString() :
textBox1.Text.Contains("*") ?
(Convert.ToInt64(textBox1.Text.Split('*')[0]) * Convert.ToInt64(textBox1.Text.Split('*')[1])).ToString() :
textBox1.Text.Contains("/") ?
(Convert.ToInt64(textBox1.Text.Split('/')[0]) / Convert.ToInt64(textBox1.Text.Split('/')[1])).ToString() :
int.TryParse(textBox1.Text, out int a) ? textBox1.Text : "0";
}
catch { }
}