30/09/2018, 18:19
Sắp xếp tăng dần các cầu thủ theo tuổi
Đề bài là nhập thông tin cầu thủ , nhập xuất thông tin đó . và em có làm thêm 1 câu là sắp xếp tăng dần số tuổi của các cầu thủ. và in ra màn hình. nhập xuất thì đã ok rồi ạ. còn sắp xếp sao nó cứ bảo lỗi 83 31 lvalue required as left operand of assignment là sao ạ. code :
#include "iostream"
using namespace std;
class cauthu { //nhap 1 cau thu
private:
char ten[30];
int tuoi,sbt,sp;
public:
friend istream &operator>>(istream &inp, cauthu &d);
friend ostream &operator<<(ostream &out, cauthu &d);
int gettuoi() {
return tuoi;
}
};
istream &operator>>(istream &inp, cauthu &d) { //nhap 1 cau thu
cout<<"
nhap ten cau thu: ";
inp.ignore(1);
inp.get(d.ten,30);
cout<<"
nhap tuoi cau thu: ";
inp>>d.tuoi;
cout<<"
nhap so an thang: ";
inp>>d.sbt;
cout<<"
nhap so phut thi dau: ";
inp>>d.sp;
}
ostream &operator<<(ostream &out, cauthu &d) { //xuat
out<<"
ten: "<
}
class day { // lop nhieu cau thu
private:
cauthu *d;
int n;
public:
void nhap();
void xuat();
int mintuoi();
int sx();
};
void day::nhap() { //nhap nhieu cau thu
cout<<"
nhap so cau thu : ";
cin>>n;
d=new cauthu[n];
for(int i=1; i<=n; i++) {
cout<<"
nhap thong tin cau thu thu "< cin>>d[i];
}
}
void day::xuat() { //xuat nhieu cau thu
int i;
cout<<"
In:
";
for( i=1; i<=n; i++) {
cout<<"thong tin cau thu thu "< cout<
}
}
int day::mintuoi() { //tim so tuoi min
int i;
float min=d[1].gettuoi();
for(i=1; i<=n; i++) {
if (min>d[i].gettuoi())
min=d[i].gettuoi();
}
return min;
}
int day::sx() { //sap xep
int i,j;
int tg;
for( i=1; i<=n; i++)
for( j=i+1; j<=n; j++)
if(d[i].gettuoi() {
tg=d[i].gettuoi();
d[j].gettuoi()=d[i].gettuoi();
d[j].gettuoi()=tg;
}
for(i=1; i<=n; i++)
cout<<" "<
}
int main() {
day d;
d.nhap();
d.xuat();
cout<<"
tuoi thap nhat trong doi la: "< d.sx();
}
Bài liên quan
Coi edit lại phần code , post như vậy không ai đủ kiên nhẫn đọc đâu
làm ntn thì mới đc giúp ạ. em gà mới, mog bác chia sẻ tí
Mới đọc sơ code vủa bạn đưa lên mà thấy lỗi cú pháp nhiều quá .
Để mình test xem .
uồi chắc do lúc em k chạy đc nên copy đi copy lại nên vậy anh ạ .ẩu quá. hì hục mãi k ra nản quá, em rất rất cảm ơn anh ạ. anh xem zùm em
đọc thấy vài chỗ sai , ms học nên là điều bình thường, gettuoi kiểu int, min kiểu float(chỗ này k sai mà k nên để 2 kiểu thế này :3)
với lại hàm sắp xếp vòng for thứ nhất i < n không phải i <= n;
nếu như vòng for thế kia thì chỉ đổi được tuổi chứ chưa đổi được thông tin bao gồm tên, số bàn thắng, số phút thi đấu. Còn lại mình chưa đọc hết nên không biết còn gì không nữa
nên có 1 hàm sắp xếp riêng, không biết bạn học cấu trúc dữ liệu và giải thuật chưa, học rồi thì hàm sắp xếp đổi thành thế này:
có thể chụp ảnh màn hình chỗ lỗi, mn nhìn sẽ dễ hiểu hơn là ngồi đọc code của b.
Code của bạn chưa build lần nào nên lỗi rất nhiều , nhiều chỗ viết không có mục đích .
đầu tiên :
khúc đó thì ổn .
Tiếp theo : Khúc này để xuất vậy nó xuất cái gì .
Khúc này dùng để xuất vậy đọc đoạn này nó xuất cái gì ???
Tiếp theo sắp xếp lỗi cú pháp không nói nhé ,ý tưởng sắp xếp không có nhé .
Cái việc xuất ra bạn cũng không biết có xuất theo đúng ý bạn không .
Bạn coi lại nhé , làm lại đi .
vâng em cảm ơn anh ạ . em sẽ thử , k đc em lại nhờ các anh giúp
vâng em cảm ơn anh ạ , sau xem sẽ xem xét kĩ rồi đăng bài :)), em đang xem + sửa lại đây
@Chuong_Pham: sau khi sửa xong mấy cái lỗi linh tinh thì vẫn còn cái lỗi này ạ, đây chính là cái em thắc mắc, cái cách sắp xếp của em có dùng đc k . hay là dùng theo bạn @chanhbc có gì mấy anh xem giúp ạ : (tiện thể cho em hỏi đưa code vào miền đen như mấy a là làm ntn ạ )
đặt code trong ``` bạn ơi
bạn thử thay thế chỗ hoán đổi bằng hàm sắp xếp của mình xem
làm sao để đặt code trong miền đen vậy bác :’(
bạn vào đây đọc, vào trang chủ diễn đàn có hướng dẫn đầy đủ rồi b nhé
đc rồi bác ạ
bạn sửa lại xem được k
vẫn k đc anh ơi :((
để tối mình xem hộ, b học CTDL & GT chưa
sửa lại 1 vài chỗ, mới học nên code tùm lum quá hic
mà b viết thì viết code cho rõ ràng hơn chút các cái xuống dòng cho dòng xuất nhìn cho đỡ đau mắt “\n”
các dấu tab cũng thế ng đọc sẽ dễ nhìn hơn, mình hay sửa bài cho b mình mà nhìn code của bạn m cũng thế chả biết viết gì nữa.
1 lần nữa , em xin cám ơn anh . em sẽ cố code gọn hơn , đỡ tù hơn ạ