Tartışma:C Sharp Programlama Dili/Sınıflar

Vikikitap, özgür kütüphane
Gezinti kısmına atla Arama kısmına atla

using System; using System.Collections.Generic; using System.Text;

namespace öğrenci_işleri { class ogrenciIsleri {

//harfNotunaCevir adlı metod, int tipinde bir parametre almaktadır //Bu parametre notun sayısal karşılığıdır. Örn 85 gibi //Bu metod 85 karşılığı olarak BB değerini hesaplar ve //return donenDeger ifadesi ile BB değerini metodun çağrıldığı yere //gönderir.

string harfNotunaCevir(int not) { string donenDeger="FF";

if ((not <= 100) && (not > 92)) donenDeger = "AA"; else if ((not > 85) && (not <= 92)) donenDeger = "BA"; else if ((not > 78) && (not <= 85)) donenDeger = "BB"; else if ((not > 70) && (not <= 78)) donenDeger = "CB"; else if ((not > 65) && (not <= 70)) donenDeger = "CC"; else if ((not > 60) && (not <= 65)) donenDeger = "DC"; else if ((not > 55) && (not <= 60)) donenDeger = "DD"; else donenDeger = "FF";

return donenDeger; }

public void notOkut(string[] isimler,string[] yilsonuNotu,int[] vize1,int[] vize2,int[] final,out int sinifMevcudu) { Console.Write("\n");

do { Console.Write("sınıf mevcudunu giriniz:"); sinifMevcudu=Int32.Parse(Console.ReadLine()); if (sinifMevcudu >= 100) Console.WriteLine("sınıf mevcudu 100′ün üstünde olamaz \n");

}while(sinifMevcudu>=100);

//öğrenci bilgilerini al for (int i = 0; i < sinifMevcudu; i++) { // ismi al Console.Write("{0}.öğrencinin ismini giriniz:", i+1); isimler[i] = Console.ReadLine();

// 1.vize notu Console.Write("{0}.öğrencinin 1.vize notunu giriniz:", i+1); vize1[i] = Int32.Parse(Console.ReadLine());

//2. vize notu Console.Write("{0}.öğrencinin 2.vize notunu giriniz:", i+1); vize2[i] = Int32.Parse(Console.ReadLine());

// final notu Console.Write("{0}.öğrencinin final notunu giriniz:", i+1); final[i] = Int32.Parse(Console.ReadLine());

yilsonuNotu[i]=harfNotunaCevir(Convert.ToInt32(Math.Round(((double)vize1[i]*0.2+(double)(vize2[i])*0.2 + (double) final[i]*0.6))));

}

Console.WriteLine("\n\nÖğrenci bilgileri başarı ile alınmiştir.");

}

int MenuListele() { int donenDeger;

// menüyü listele Console.Write("\n"); Console.WriteLine("[1] Genel liste "); Console.WriteLine("[2] Yıl sonu sınıf ortalaması "); Console.WriteLine("[3] Geçen öğrenciler "); Console.WriteLine("[4] Kalan öğrenciler "); Console.WriteLine("[5] Listeyi yenile "); Console.WriteLine("[-1] Çıkış ");

// seçim al. do { Console.Write("seçiminiz :"); donenDeger = Int32.Parse(Console.ReadLine());

// yanlış bir secim yapılmısmı kontrol et if ( !((donenDeger >= 1) && (donenDeger <= 5) || (donenDeger == -1)) ) Console.WriteLine("yanlış bir seçim yaptınız tekrar deneyiniz. \n");

}while(!((donenDeger>=1) && (donenDeger<=5)||(donenDeger==-1))); return donenDeger; }

static void Main() { ogrenciIsleri myOgrenciIsleri = new ogrenciIsleri (); int secim; int sinifMevcudu; string[] isimler = new String[100]; string[] yilsonuNotu = new string[100]; int[] vize1 = new int[100]; int[] vize2 = new int[100]; int[] final = new int[100];

myOgrenciIsleri.notOkut(isimler, yilsonuNotu, vize1, vize2, final, out sinifMevcudu);

do { secim = myOgrenciIsleri.MenuListele(); switch (secim) {

case 1: // gelen liste Console.Write("şimdi bütün öğrenciler listelenecek,başlamak için a basınız.\n"); Console.ReadLine(); Console.WriteLine("Adı\t\tVize1\tVize2\tFinalnotu\tDonemNotu");

for (int sayac = 0; sayac < sinifMevcudu; sayac++) { Console.WriteLine("{0}\t\t{1}\t{2}\t{3}\t\t{4}\t”, isimler[sayac],vize1[sayac],vize2[sayac],final[sayac],yilsonuNotu[sayac]");

} Console.WriteLine("sınıf mevcudu {0}dır",sinifMevcudu); break;

case 2: // yılsonu sınıf ortalamsı double ortalama=0;

for (int sayac = 0; sayac < sinifMevcudu; sayac++) { ortalama += (double)vize1[sayac]*0.2+(double)(vize2[sayac])*0.2 + (double) final[sayac]*0.6; } ortalama /= sinifMevcudu;

Console.WriteLine("\n Yıl sonu not ortalaması {0} dır.",Math.Round(ortalama,2));

break;

case 3: // geçen öğrenciler int gecenOgrenciler=0;

Console.WriteLine("şimdi geçen öğrenciler listelenecek,başlamak için a basınız \n"); Console.ReadLine(); Console.WriteLine("Adı\t\tVize1\tVize2\tFinalnotu\tDonemNotu");

for (int sayac = 0; sayac < sinifMevcudu; sayac++) { if (yilsonuNotu[sayac] != "FF") {

   Console.WriteLine("{0}\t\t{1}\t{2}\t{3}\t\t{4}\t", isimler[sayac], vize1[sayac], vize2[sayac], final[sayac], yilsonuNotu[sayac]);

gecenOgrenciler++; } } Console.WriteLine("geçen öğrenci sayısı {0}", gecenOgrenciler); break;

case 4: // kalan öğrenciler int kalanOgrenciler=0; Console.WriteLine("şimdi kalan öğrenciler listelenecek,başlamak için a basınız \n"); Console.ReadLine(); Console.WriteLine("Adı\t\tVize1\tVize2\tFinalnotu\tDonemNotu");

for (int sayac = 0; sayac < sinifMevcudu; sayac++) { if (yilsonuNotu[sayac] == "FF") { Console.WriteLine("{0}\t\t{1}\t{2}\t{3}\t\t{4}\t", isimler[sayac], vize1[sayac], vize2[sayac], final[sayac], yilsonuNotu[sayac]); kalanOgrenciler++; } } Console.WriteLine("kalan öğrenci sayısı {0}", kalanOgrenciler); break;

case 5: // listeyi yenile. myOgrenciIsleri.notOkut(isimler, yilsonuNotu, vize1, vize2, final, out sinifMevcudu); break;

case -1: // çıkış break; }

} while (secim != -1);

} } }