Code bị lỗi [Error] 'class sinhvien' has no member named 'tongd'

Cho em hỏi code này sai ở đâu ạ, nó báo là [Error] ‘class sinhvien’ has no member named ‘tongd’

#include<iostream>
#include<string.h>
#include<iomanip>
using namespace std;
class sinhvien{
	
	private:
		int diemt;
		int dieml;
		int diemh;
		int masv;
		string hoten;
		
	public:
		
		void nhap();
		void xuat();
       friend void tinht(sinhvien sv);
};
void tinht(sinhvien sv)
{
	cout<<"tong la : "<<sv.diemt+sv.dieml+sv.diemh;
}	
 void sinhvien::nhap()
 {
 	cout<<"nhap diem toan ";cin>>diemt;
 	cout<<"nhap diem ly ";cin>>dieml;
 	cout<<"nhap diem hoa ";cin>>diemh;
 }
 void sinhvien::xuat()
 {
 	cout<<"toan"<<setw(10)<<"ly"<<setw(10)<<"hoa"<<endl;
 	cout<<diemt<<setw(10)<<dieml<<setw(10)<<diemh<<endl;
 }
 void sapxep(sinhvien sv[],int n)
 {
 	for(int i=0;i<n-1;i++)
	{
		for(int j=i+1;j<n;j++)
		{
			if(sv[i].tinht()<sv[j].tinht())
			{
				sinhvien tg=sv[i];
				sv[i]=sv[j];
				sv[j]=tg;
			}
		}
	}
 }
 
int main()
{
	int n;sinhvien sv[30];
	cout<<"nhap so sinh vien : ";cin>>n;
	for(int i=0;i<n;i++)
	{ 
		sv[i].nhap();
	}
	for(int i=0;i<n;i++)
	{ 
		sv[i].xuat();
	}
	cout<<" SAU KHI DA SAP XEP THEO TONG DIEM:::"<<endl;
	sapxep(sv,n);
	for(int i=0;i<n;i++)
	{ 
		sv[i].xuat();
	}
}
void sinhvien::nhap(sinhvien sv)
{
    cout<<"nhap diem toan ";cin>>sv.diemt;
    cout<<"nhap diem ly ";cin>>sv.dieml;
    cout<<"nhap diem hoa ";cin>>sv.diemh;
}

Fix lại như sau, ngoài ra rule code của bạn cần phải luyện tập nhiều hơn nhé, thấy trình bày xấu quá

4 Likes

void sinhvien::nhap(sinhvien & sv) chứ.

2 Likes
if(sv[i].tinht()<sv[j].tinht()) 

Hàm tinht của bạn không phải member của class sinh viên nên ko dung sv[i].tinht được.
và hàm tinht(sinhvien sv) nên bạn phải truyền class sinhvien vào.
hàm void tinht(sinhvien sv) hàm void ko return nên so sánh sẽ ko được

->

int tinht(sinhvien sv)
{
	cout<<"tong la : "<<sv.diemt+sv.dieml+sv.diemh;
        return (sv.diemt+sv.dieml+sv.diemh);
}

if(tinht(sv[i])<tinht(sv[j]))

sửa lại như vậy sẽ chạy được

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?