Salı, Mart 18, 2008

2.Hafta-Soru10

Kullanıcının girdiği 5 kişiye ayit vize final notlarının ortalamasını bulup isme göre alfabetik notlara göre de büyükten küçüğe sıralayan bi program.

#include <>

#include <>

#include <>

#include <>



using namespace std;



class OgrenciNot

{

private:

char isim[5][20];

int vize[5];

int final[5];

float ortalama [5];



public:

void not_oku();

void hesapla();

void yaz();

void siralaAlf();

void siralaOrt();

void siralaVize();

void siralaFinal();

};



//Kullanıcıdan notların istenmesi-------------------------------------

void OgrenciNot::not_oku()

{

for (int i =0;i<5;i++)>>isim[i];



cout<<"Vize: "; cin>>vize[i];



cout<<"Final: "; cin>>final[i];



system("cls");

}

}



//Ortalamarın hesaplanması-------------------------------------

void OgrenciNot::hesapla()

{

for (int i =0;i<5;i++)>


for (int i =0;i<5;i++)><<><<><<>


cout<<<"Anamenuye donmek icin bir tusa basin.."; getch(); } //İsme göre alfabetik sıralama------------------------------------- void OgrenciNot::siralaAlf() { char isimTut[40]; int vizeTut; int finalTut; float ortTut; for (int i= 0;i<5;i++) k ="0;k
{

if (strcmp(isim[i],isim[k])< vizetut =" vize[i];" finaltut =" final[i];" orttut =" ortalama[i];" i ="0;i<5;i++)" k ="0;k
{

if (ortalama[i]>ortalama[k])

{

ortTut = ortalama[i];

ortalama[i] = ortalama[k];

ortalama[k] = ortTut;



strcpy(isimTut,isim[i]);

strcpy(isim[i],isim[k]);

strcpy(isim[k],isimTut);



vizeTut = vize[i];

vize[i]=vize[k];

vize[k]=vizeTut;



finalTut = final[i];

final[i] = final[k];

final[k] = finalTut;

}

}

}



yaz();

}



//Vizeye göre sıralama----------------------------------------------

void OgrenciNot::siralaVize()

{

char isimTut[40];

int vizeTut;

int finalTut;

float ortTut;



for(int i =0;i<5;i++) k ="0;k
{

if (vize[i]>vize[k])

{

vizeTut = vize[i];

vize[i]=vize[k];

vize[k]=vizeTut;



ortTut = ortalama[i];

ortalama[i] = ortalama[k];

ortalama[k] = ortTut;



strcpy(isimTut,isim[i]);

strcpy(isim[i],isim[k]);

strcpy(isim[k],isimTut);



finalTut = final[i];

final[i] = final[k];

final[k] = finalTut;

}

}

}



yaz();

}



//Final notuna göre sıralama---------------------------------------------

void OgrenciNot::siralaFinal()

{

char isimTut[40];

int vizeTut;

int finalTut;

float ortTut;





for(int i =0;i<5;i++) k ="0;k
{

if (final[i]>final[k])

{

finalTut = final[i];

final[i] = final[k];

final[k] = finalTut;



vizeTut = vize[i];

vize[i]=vize[k];

vize[k]=vizeTut;



ortTut = ortalama[i];

ortalama[i] = ortalama[k];

ortalama[k] = ortTut;



strcpy(isimTut,isim[i]);

strcpy(isim[i],isim[k]);

strcpy(isim[k],isimTut);

}

}

}



yaz();

}



int menu ()

{

int tus;

system("cls");

cout<<"1-Alfabetik sirala"<<<"2-Ortalamaya gore sirala"<
cout<<"3-Vizeye gore sirala"<<<"4-Finale gore sirala"<
cout<<"5-Cikis"<<<<"Birini secin: "; tus = getch(); return tus; } int main() { OgrenciNot sinif1; int secim; sinif1.not_oku(); sinif1.hesapla(); do { secim = menu(); switch(secim) { case '1':sinif1.siralaAlf();break; case '2':sinif1.siralaOrt();break; case '3':sinif1.siralaVize();break; case '4':sinif1.siralaFinal();break; case '5':secim = '5'; } }while(secim !='5'); return 0; }

2 yorum:

Esra Sirkeli dedi ki...

teşekkür ederim.c++ ı alttan alan birisi olarak (esra) bunlar çok işime yarayacak

Esat ARSLAN dedi ki...

İnşallah bu sene geçersin de bir daha uğraşmak zorunda kalmazsın :)).