Abiler ben biraz c# öğrenmek istiyorum bunun için okuldaki öğretmenimden yardım istedim. Bir kaç şey öğrettikten sonra benden basit bir yaş hesaplama kodu istedi kişi hangi yılda doğduğunu yazacak ve kaç yaşında olduğunu gösterecek ne yazık ki nasıl yazıldığını bilmiyorum ve yapamıyorum bana kodlarda yardımcı olur musunuz ?
C# basit yaş hesaplama
Cevaplar
3 tane int türünde degişken tanımlayın. simdikiYil, kullanicininYili, sonuc. DateTime dan içinde bulunduğumuz yılı alıp int türüne convert ederek simdikiYil degişkenine, kullanıcının girdigi yılı da kullanicininYili'na parse ederek atayın. sonuc degişkenine de simdikiYil - ullanicininYili şeklinde çıkartma işlemi yaparak bulunan yaşı atıyabilirsiniz.
abi biliyorum ama nasıl yazılacağını bilmiyorum bana kodlarını yazıp yollar mısın veyaArtal73 dedi: ↑3 tane int türünde degişken tanımlayın. simdikiYil, kullanicininYili, sonuc. DateTime dan içinde bulunduğumuz yılı alıp int türüne convert ederek simdikiYil degişkenine, kullanıcının girdigi yılı da kullanicininYili'na parse ederek atayın. sonuc degişkenine de simdikiYil - ullanicininYili şeklinde çıkartma işlemi yaparak bulunan yaşı atıyabilirsiniz.
int yil
private void Button_Click(object sender, EventArgs e)
{
yil = 2013-Convert.ToInt32(textbox1.text);
label3.text=yil.value.ToString();
}
bunun eksiklerine yardım eder misin ?
yas = DateTime . now . year - dogumyili ; yazman yeterli olucaktır
noktalar arasındaki boşluklar olmamalı kaldırırsın
noktalar arasındaki boşluklar olmamalı kaldırırsın
//İçinde bulunulan yılı alıp değişkene aktarma
int simdikiYil = Convert.ToInt32(DateTime.Now.Year);
//Kullanıcının girdiği yılı alıp değişkene aktarma
int kullanicininYili = Convert.ToInt32(textBox1.Text);
//İki yıl arasındaki farkı bulup sonuç degişkenine, sonuc degişkeninin degerinide Labele aktarma.
int sonuc = simdikiYil - kullanicininYili;
label1.Text = sonuc.ToString();
int simdikiYil = Convert.ToInt32(DateTime.Now.Year);
//Kullanıcının girdiği yılı alıp değişkene aktarma
int kullanicininYili = Convert.ToInt32(textBox1.Text);
//İki yıl arasındaki farkı bulup sonuç degişkenine, sonuc degişkeninin degerinide Labele aktarma.
int sonuc = simdikiYil - kullanicininYili;
label1.Text = sonuc.ToString();
çok teşekkür ederim :)Artal73 dedi: ↑//İçinde bulunulan yılı alıp değişkene aktarma
int simdikiYil = Convert.ToInt32(DateTime.Now.Year);
//Kullanıcının girdiği yılı alıp değişkene aktarma
int kullanicininYili = Convert.ToInt32(textBox1.Text);
//İki yıl arasındaki farkı bulup sonuç degişkenine, sonuc degişkeninin degerinide Labele aktarma.
int sonuc = simdikiYil - kullanicininYili;
label1.Text = sonuc.ToString();
int snc;
int dt = Convert.ToInt32(textBox1.Text);
snc = DateTime.Now.Year - dt;
label1.Text = snc.ToString();
int dt = Convert.ToInt32(textBox1.Text);
snc = DateTime.Now.Year - dt;
label1.Text = snc.ToString();
Daha hassas tespit için şöyle bir code var.
private static int CalculateAge(DateTime dateOfBirth)
{
int age = 0;
age = DateTime.Now.Year - dateOfBirth.Year;
if (DateTime.Now.DayOfYear < dateOfBirth.DayOfYear)
age = age - 1;
return age;
}Eleman bir yaş hesaplaması yapamıyor , sen geriye değer döndüren fonksiyon yapıyorsun.algea dedi: ↑Daha hassas tespit için şöyle bir code var.private static int CalculateAge(DateTime dateOfBirth) { int age = 0; age = DateTime.Now.Year - dateOfBirth.Year; if (DateTime.Now.DayOfYear < dateOfBirth.DayOfYear) age = age - 1; return age; }
Biraz basite indirgeyerek anlatman daha mantıklı olmaz mıydı ? @Artal73'ün yaptığı yeterli olucaktır.
Bende bir yöntem sunayım dersem ;
var yil = int.Parse(DateTime.Now.Year) - int.Parse(txtYil.Text);
lblYil.Text = yil.ToString();
Örneğin 02.03.2012 doğum tarihi olsun check ettiğimiz tarih 2013 senesi olsun 02.03.2013 tarihine kadar yaş dolmuş sayılmaz mı? Bu tarihten itibaren 1 yaşına basar. İşin mantığı bu kavramı eksik görüp ilave etmiş bulundum.sino dedi: ↑Eleman bir yaş hesaplaması yapamıyor , sen geriye değer döndüren fonksiyon yapıyorsun.
Biraz basite indirgeyerek anlatman daha mantıklı olmaz mıydı ? @Artal73'ün yaptığı yeterli olucaktır.
Bende bir yöntem sunayım dersem ;
var yil = int.Parse(DateTime.Now.Year) - int.Parse(txtYil.Text);
lblYil.Text = yil.ToString();
Aslında en mantıklısı tabi ki senin kisi. Günden küçükse - 1 yapmışsın. Tamam ama biz olmasını gerekeni verelim , isteyen arkadaş kendisi geliştirsin :) Ben yanlış demedim zaten dostum. Emeğine sağlık en doğrusunu sen söylemişsin.algea dedi: ↑Örneğin 02.03.2012 doğum tarihi olsun check ettiğimiz tarih 2013 senesi olsun 02.03.2013 tarihine kadar yaş dolmuş sayılmaz mı? Bu tarihten itibaren 1 yaşına basar. İşin mantığı bu kavramı eksik görüp ilave etmiş bulundum.