kaz3m.b
شنبه 30 دی 1391, 04:41 صبح
با سلام
من يك برنامه دارم كه داراي چند تابع هست و مياد و اول اسم كاربر رو ميگيره و بعد شماره كاربر و بعد تعداد دروسي كه ميخواد نمره هاشو وارد كنه و بعد هم نمره هارو وارد ميكنه .
بعد از وارد كردن نمره ها ، نمره هاش نمايش داده ميشه . ولي نه به اندازه اي كه كاربر وارد كرده بلكه به تعداد مشخصي كه به عدد وارد شده . من ميخوام اون متغيري كه تعداد دروس رو ذخيره ميكنه تو خودش كه اسمش tot هست رو در اين تابع هم استفاده كنم كه نياز به استفاده از عدد مشخص نباشه .
اين كل برنامه :
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
//In Barname Ebteda Etelaati Mesle name Va Shomare Danesh Amooz Va Tedad Doros Ra Migirad Va Bar Asase Tedad Dars haye Vared Shode
//Ra Chap Mikonad Va Be Ezaye Harkodam Nomre Migirad Va Dar Akhar Nomre Varzesh Ra Joda Migirid Va Jam Anhara Hesab Mikonad Va Moadel Ra
//Mohasebe Mikonad
class student_id
{
int rno;
char name[20];
public:
int tot;
void read_id()
{
cout<<"\n\nEnter the Name of the Student : ";
gets(name); //in tabe baraye in estefade shode chon momken hast ke karbar bekhad name ee ra ba fasele varde konad va ba cin nemishavad name ra ba fasele vared kard
cout<<"\n\nEnter The Student No. : ";
cin>>rno;
}
void display_nr()
{
cout<<"\n\n\t\tSTUDENT \n\nNAME : ";
puts(name);
cout<<"\n\nStudent NO. : "<<rno;
}
};
class marks:public student_id
{
public:
int i,tot,mark[3];
void read_m()
{
read_id();
cout<<"\n\nEnter The Total Of Grades :";
cin>>tot;
for(i=0;i<tot;i++)
{
cout<<"\n\nEnter The Grade "<<i+1<<" between 0 & 20 : ";
cin>>mark[i];
}
}
void display_m()
{
display_nr();
cout<<"\n\n\tResults ";
for(i=0;i<3;i++)
cout<<"\n\nGrade "<<i+1<<" : "<<mark[i];
}
};
class sports
{
public:
int sm;
void read_sportm()
{
cout<<"\n\nEnter The Grade Of Sport : ";
cin>>sm;
}
};
class ave:public marks,public sports
{
public:
float total,average;
void calculate()
{
read_m();
read_sportm();
total=0;
for(i=0;i<3;i++)
{
total+=mark[i];
}
total+=sm;
average=(total/4);
}
void display_totp()
{
display_m();
cout<<"\n\nTOTAL = "<<total;
cout<<"\n\nAverage = "<<average;
}
};
void main()
{
int cont;
ave pc;
clrscr();
do
{
pc.calculate();
clrscr();
pc.display_totp();
cout<<"\n\nDo You Want to Continue?(1-YES/0-NO)";
cin>>cont;
}while(cont==1);
getch();
}
تابعي هم كه بايد tot رو در خودش قرار بده اينه : ( بايد به جاي 3 در داخل for قرار بگيره . )
void display_m()
{
display_nr();
cout<<"\n\n\tResults ";
for(i=0;i<3;i++)
cout<<"\n\nGrade "<<i+1<<" : "<<mark[i];
}
};
ممنون ميشم كمك كنيد در اين مورد .
با تشكر
من يك برنامه دارم كه داراي چند تابع هست و مياد و اول اسم كاربر رو ميگيره و بعد شماره كاربر و بعد تعداد دروسي كه ميخواد نمره هاشو وارد كنه و بعد هم نمره هارو وارد ميكنه .
بعد از وارد كردن نمره ها ، نمره هاش نمايش داده ميشه . ولي نه به اندازه اي كه كاربر وارد كرده بلكه به تعداد مشخصي كه به عدد وارد شده . من ميخوام اون متغيري كه تعداد دروس رو ذخيره ميكنه تو خودش كه اسمش tot هست رو در اين تابع هم استفاده كنم كه نياز به استفاده از عدد مشخص نباشه .
اين كل برنامه :
#include<iostream.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
//In Barname Ebteda Etelaati Mesle name Va Shomare Danesh Amooz Va Tedad Doros Ra Migirad Va Bar Asase Tedad Dars haye Vared Shode
//Ra Chap Mikonad Va Be Ezaye Harkodam Nomre Migirad Va Dar Akhar Nomre Varzesh Ra Joda Migirid Va Jam Anhara Hesab Mikonad Va Moadel Ra
//Mohasebe Mikonad
class student_id
{
int rno;
char name[20];
public:
int tot;
void read_id()
{
cout<<"\n\nEnter the Name of the Student : ";
gets(name); //in tabe baraye in estefade shode chon momken hast ke karbar bekhad name ee ra ba fasele varde konad va ba cin nemishavad name ra ba fasele vared kard
cout<<"\n\nEnter The Student No. : ";
cin>>rno;
}
void display_nr()
{
cout<<"\n\n\t\tSTUDENT \n\nNAME : ";
puts(name);
cout<<"\n\nStudent NO. : "<<rno;
}
};
class marks:public student_id
{
public:
int i,tot,mark[3];
void read_m()
{
read_id();
cout<<"\n\nEnter The Total Of Grades :";
cin>>tot;
for(i=0;i<tot;i++)
{
cout<<"\n\nEnter The Grade "<<i+1<<" between 0 & 20 : ";
cin>>mark[i];
}
}
void display_m()
{
display_nr();
cout<<"\n\n\tResults ";
for(i=0;i<3;i++)
cout<<"\n\nGrade "<<i+1<<" : "<<mark[i];
}
};
class sports
{
public:
int sm;
void read_sportm()
{
cout<<"\n\nEnter The Grade Of Sport : ";
cin>>sm;
}
};
class ave:public marks,public sports
{
public:
float total,average;
void calculate()
{
read_m();
read_sportm();
total=0;
for(i=0;i<3;i++)
{
total+=mark[i];
}
total+=sm;
average=(total/4);
}
void display_totp()
{
display_m();
cout<<"\n\nTOTAL = "<<total;
cout<<"\n\nAverage = "<<average;
}
};
void main()
{
int cont;
ave pc;
clrscr();
do
{
pc.calculate();
clrscr();
pc.display_totp();
cout<<"\n\nDo You Want to Continue?(1-YES/0-NO)";
cin>>cont;
}while(cont==1);
getch();
}
تابعي هم كه بايد tot رو در خودش قرار بده اينه : ( بايد به جاي 3 در داخل for قرار بگيره . )
void display_m()
{
display_nr();
cout<<"\n\n\tResults ";
for(i=0;i<3;i++)
cout<<"\n\nGrade "<<i+1<<" : "<<mark[i];
}
};
ممنون ميشم كمك كنيد در اين مورد .
با تشكر