DonanımHaber Mini sürüm 2 Ocak 2026 tarihi itibariyle kullanımdan kalkacaktır. Bunun yerine daha hızlı bir deneyim için DH Android veya DH iOS uygulamalarını kullanabilirsiniz.
Arama butonu
Bu konudaki kullanıcılar: 1 misafir
14
Cevap
2648
Tıklama
0
Öne Çıkarma
C#'da yaptığım not ortalama programı.
C
15 yıl (1650 mesaj)
Binbaşı
Konu Sahibi

Aşağıdaki gibi yaptım ama textboxlar boş olunca program pert. İlle şimdi if textbox1.Text = "" textbox1.Text = "0" diye 30 a kadar yapmalı mıyım yoksa daha kısa bi yolu var mı?

ekleme: Daha 2 gündür C# öğreniyorum kendi çabalarımla


{ 
double ort1 = Convert.ToDouble(textBox1.Text);
double ort2 = Convert.ToDouble(textBox3.Text);
double ort3 = Convert.ToDouble(textBox5.Text);
double ort4 = Convert.ToDouble(textBox7.Text);
double ort5 = Convert.ToDouble(textBox9.Text);
double ort6 = Convert.ToDouble(textBox11.Text);
double ort7 = Convert.ToDouble(textBox13.Text);
double ort8 = Convert.ToDouble(textBox15.Text);
double ort9 = Convert.ToDouble(textBox17.Text);
double ort10 = Convert.ToDouble(textBox19.Text);
double ort11 = Convert.ToDouble(textBox21.Text);
double ort12 = Convert.ToDouble(textBox23.Text);
double ort13 = Convert.ToDouble(textBox25.Text);
double ort14 = Convert.ToDouble(textBox27.Text);
double ort15 = Convert.ToDouble(textBox29.Text);
double ort16 = Convert.ToDouble(textBox31.Text);
double ds1 = Convert.ToDouble(textBox2.Text);
double ds2 = Convert.ToDouble(textBox4.Text);
double ds3 = Convert.ToDouble(textBox6.Text);
double ds4 = Convert.ToDouble(textBox8.Text);
double ds5 = Convert.ToDouble(textBox10.Text);
double ds6 = Convert.ToDouble(textBox12.Text);
double ds7 = Convert.ToDouble(textBox14.Text);
double ds8 = Convert.ToDouble(textBox16.Text);
double ds9 = Convert.ToDouble(textBox18.Text);
double ds10 = Convert.ToDouble(textBox20.Text);
double ds11 = Convert.ToDouble(textBox22.Text);
double ds12 = Convert.ToDouble(textBox24.Text);
double ds13 = Convert.ToDouble(textBox26.Text);
double ds14 = Convert.ToDouble(textBox28.Text);
double ds15 = Convert.ToDouble(textBox30.Text);
double ds16 = Convert.ToDouble(textBox32.Text);
double orttop = ort1 * ds1 + ort2 * ds2 + ort3 * ds3 + ort4 * ds4 + ort5 * ds5 + ort6 * ds6 + ort7 * ds7 + ort8 * ds8 + ort9 * ds9 + ort10 * ds10 + ort11 * ds11 + ort12 * ds12 + ort13 * ds13 + ort14 * ds14 + ort15 * ds15 + ort16 * ds16;
double dstop = ds1 + ds2 + ds3 + ds4 + ds5 + ds6 + ds7 + ds8 + ds9 + ds10 + ds11 + ds12 + ds13 + ds14 + ds15 + ds16;
double sonuc = orttop / dstop;
MessageBox.Show(sonuc.ToString());
}





< Bu mesaj bu kişi tarafından değiştirildi Cave Johnson -- 19 Nisan 2012; 21:33:56 >

W
15 yıl (708 mesaj)
Yüzbaşı

c# a yeni başlamışsın ama algoritman biraz zayıf gibi o yüzden bence biraz algoritma çalış sonra c# a geç 32 tane textbox yapmakdansa sag tarafda prefences die bişi olucak ordan add deyip visualbasic i ekle sonra en yukarı using in oldugu yere de vb yi ekle sonra interaction input box i 32 kere for dongusu icinde dondurup ekletebilirsin sonra onları diziye atayıp ordan çekebilirsin


Bu mesaja 1 cevap geldi.
N
15 yıl (61 mesaj)
Çavuş

E-Okul Not Hesaplama Uygulaması v1.1 Fixed (BETA)

NOT:Hatalar Giderildi;XP SP3,WINDIWS 7 SP1 TEST EDİLDİ

Görüntü:
http://www.youtube.com/watch?v=mqri3fqRUxU

Özellikler:
EOkul Son Sene I,II Dönem Notlarını Gösterme
Başarısız Olunan Dersi Vurgulama
Ders Saatlerini & Çarpılmış Puanları Gösterme
Son Sene I Dönem & II Dönem Ortalamsını Gösterme
Son Sene I Dönem & II Dönem Ağırlıklı Ortalamsını Gösterme
Sanal Karne Oluşturup Detaylı Bilgilendirme
Lise Son Sınıf İçin OOBP & AOBP & DPLP Gösterme
Seçilen Senelerin OOBP & AOBP & DPLP Ortalamasını Hesaplama
Taktir & Teşşekür Belgesi Gösterme (Alındıysa)
Yükleme Adresi:
http://www.dosya.tc/upload/WL1egn/E_Okul_Not_Hesaplayici_v1_1_Fixed.zip.html


Bu mesaja 1 cevap geldi.
D
15 yıl (4860 mesaj)
Yarbay

foreach (textbox t in this.controls)
{
if(t.text = "")
t.text = "0";
}


matık bu şekilde olabilir, normalde tabikide bu şekilde bir algoritma güzel bir algoritma değil ama işini görmesi açısından forach komutunu araştırmanı tavsiye ederim


Bu mesaja 1 cevap geldi.
S
15 yıl (2599 mesaj)
Yarbay

quote:

Orijinalden alıntı: dreampowder

foreach (textbox t in this.controls)
{
if(t.text = "")
t.text = "0";
}


matık bu şekilde olabilir, normalde tabikide bu şekilde bir algoritma güzel bir algoritma değil ama işini görmesi açısından forach komutunu araştırmanı tavsiye ederim


Bu foreach döngüsü Controllerden herhangi birini textbox tipine dönüştüremediğinde hata verecektir, bunun yerine

foreach(Control c in Controls) 
{
if(c is TextBox)
{
}
}


şeklinde bir döngü daha iyi olacaktır, ilk mesajdaki hataya gelince try catch bloğu ile başarılı şekilde çözebilirsin


Bu mesaja 2 cevap geldi.
C
15 yıl (1650 mesaj)
Binbaşı
Konu Sahibi

quote:

Orijinalden alıntı: sehlor


quote:

Orijinalden alıntı: dreampowder

foreach (textbox t in this.controls)
{
if(t.text = "")
t.text = "0";
}


matık bu şekilde olabilir, normalde tabikide bu şekilde bir algoritma güzel bir algoritma değil ama işini görmesi açısından forach komutunu araştırmanı tavsiye ederim


Bu foreach döngüsü Controllerden herhangi birini textbox tipine dönüştüremediğinde hata verecektir, bunun yerine

foreach(Control c in Controls) 
{
if(c is TextBox)
{
}
}


şeklinde bir döngü daha iyi olacaktır, ilk mesajdaki hataya gelince try catch bloğu ile başarılı şekilde çözebilirsin


Try catch zaten ekli ben yazmadım 1. mesaja bu foreach döngüsü her biri için oluyor yani foreach c yapıyoruz c yi de textbox olarak atıyoruz her bir textbox için oluyor ama if(c is textbox) kısmını kavrayamadım


Bu mesaja 1 cevap geldi.
N
15 yıl (2261 mesaj)
Binbaşı

quote:

Orijinalden alıntı: FurkyZ


quote:

Orijinalden alıntı: sehlor


quote:

Orijinalden alıntı: dreampowder

foreach (textbox t in this.controls)
{
if(t.text = "")
t.text = "0";
}


matık bu şekilde olabilir, normalde tabikide bu şekilde bir algoritma güzel bir algoritma değil ama işini görmesi açısından forach komutunu araştırmanı tavsiye ederim


Bu foreach döngüsü Controllerden herhangi birini textbox tipine dönüştüremediğinde hata verecektir, bunun yerine

foreach(Control c in Controls) 
{
if(c is TextBox)
{
}
}


şeklinde bir döngü daha iyi olacaktır, ilk mesajdaki hataya gelince try catch bloğu ile başarılı şekilde çözebilirsin


Try catch zaten ekli ben yazmadım 1. mesaja bu foreach döngüsü her biri için oluyor yani foreach c yapıyoruz c yi de textbox olarak atıyoruz her bir textbox için oluyor ama if(c is textbox) kısmını kavrayamadım



c'yi textbox olarak atamıyoruz. c'nin tipini belirliyoruz. c textboxdır diyoruz.

Alttaki if döngüsüne de if (c is texbox) derken tüm kontrolleri deniyor formdaki (buton, label,textbox) falan. textbox olanlara istediğin işlemi yaptırıyorsun.

if'in içinede yaptıracağın işlemi yapıyorsun. Ekrandaki tüm textboxların textine "deneme" yaz falan gibi...

dizi falanda oluşturabilirsin de bu foreach sana agır gelecek. Bende yaptığın yolla uzun uzun olarak yap elin alışır pratik yapmış olursun.


Bu mesaja 1 cevap geldi.
F
15 yıl (9679 mesaj)
Yarbay

Text boxlara tek bir deger ata başta sonra onuda consructurda sıfır yap olsun bitsin boylece her o sınıfın her acılısında hep sıfır degeri alır , ne kadar cok dongu varsa porgramında o kadar kasar unutma.



D
15 yıl (4860 mesaj)
Yarbay

quote:

Orijinalden alıntı: sehlor


quote:

Orijinalden alıntı: dreampowder

foreach (textbox t in this.controls)
{
if(t.text = "")
t.text = "0";
}


matık bu şekilde olabilir, normalde tabikide bu şekilde bir algoritma güzel bir algoritma değil ama işini görmesi açısından forach komutunu araştırmanı tavsiye ederim


Bu foreach döngüsü Controllerden herhangi birini textbox tipine dönüştüremediğinde hata verecektir, bunun yerine

foreach(Control c in Controls) 
{
if(c is TextBox)
{
}
}


şeklinde bir döngü daha iyi olacaktır, ilk mesajdaki hataya gelince try catch bloğu ile başarılı şekilde çözebilirsin


haklısınız, ezberden yazınca dikkat etmemişim bu duruma

işin komik yanı" foreach (textbox t " diye google da aratınca kendimin 2004 senesinde aynı şekilde kodu yazıp hata aldıktan sonra bu kod neden çalışmıyor diye sorduğum soru çıktı karşıma
beynime nasıl kazınmışsa bu yanlış bilgi

http://bytes.com/topic/c-sharp/answers/240047-clearing-textboxes





< Bu mesaj bu kişi tarafından değiştirildi dreampowder -- 17 Haziran 2011; 17:34:15 >
Bu mesaja 1 cevap geldi.
C
15 yıl (1650 mesaj)
Binbaşı
Konu Sahibi

evet o kadar uğraştım ama cannot convert string to bool hatası veriyor convert formülleri kulandım yine olmadı nerede hata var?

foreach(Control c in Controls) 
{
if(c is TextBox)
{
if(c.Text = "")
c.Text = "0"
}
}


Bu mesaja 1 cevap geldi.
E
15 yıl (1138 mesaj)
Yüzbaşı

İlk önce emeğinize sağlık,program çok güzel ve kullanışlı olmuş
fakat benim yılsonu ortalamam karnede 74,39 olduğu halde programda 78,96 gözüküyor. Bir hata var sanırım ?





< Bu mesaj bu kişi tarafından değiştirildi Eesti -- 18 Haziran 2011; 16:29:58 >
Bu mesaja 1 cevap geldi.
C
15 yıl (1650 mesaj)
Binbaşı
Konu Sahibi

quote:

Orijinalden alıntı: Eesti

İlk önce emeğinize sağlık,program çok güzel ve kullanışlı olmuş
fakat benim yılsonu ortalamam karnede 74,39 olduğu halde programda 78,96 gözüküyor. Bir hata var sanırım ?


Birincisi programı buraya koymadım. Nezuk arkadaşın postu o ona pm at.
İkincisi karnedeki yılsonu ortalaması ile 2. dönem ortalaması aynı şey değildir.



P
15 yıl (9579 mesaj)
Yarbay

Arkadasim add gibi bir ozellik koy 32 textboxda ney, parse et hem daha iyi.algoritma kotu degistirmelisin.


Bu mesaja 1 cevap geldi.
C
15 yıl (1650 mesaj)
Binbaşı
Konu Sahibi

@phantom_coal

Hocam daha bir şey bildiğim yok ki kendi çabalarımla öğrenmeye çalışıyorum algoritma formül falan bilmiyorum ondan biraz olmadı bu. Textbox label if else try catch convert başka bişey bilmiyorum daha. Kitap alırsam halledicem bunları.



P
15 yıl (9579 mesaj)
Yarbay

Nette dokuman var cok kitaba gerek yok,hicbirsey bilmiyorsan bunlara daha sonra baslamalisin,daha temel seyler ogren.



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.