Psst.. new poll here.
Psst.. new forums here.
Microsoft is blocking us again (TY IP Reputation!) so just use oauth login instead. :)
Paste
Pasted as C++ by minhtienbukai501 ( 5 years ago )
#include <iostream>
using namespace std;
struct Diem {
double Toan;
double Ly;
double Hoa;
double DiemTrungBinh;
};
int main()
{
int n;
cout << "\nNhap so luong sinh vien: ";
cin >> n;
Diem* a = new Diem[n];
for (int i = 0; i < n; i++)
{
cout << "\n\t===Nhap diem hoc sinh thu " << i + 1 << "===\n\n";
do
{
cout << "\nNhap Diem Toan: ";
cin >> a[i].Toan;
if (a[i].Toan < 0 || a[i].Toan > 10)
{
cout << "\nDiem ban nhap khong hop le! Xin Kiem tra lai!";
}
} while (a[i].Toan < 0 || a[i].Toan > 10);
do
{
cout << "\nNhap Diem Ly: ";
cin >> a[i].Ly;
if (a[i].Ly < 0 || a[i].Ly > 10)
{
cout << "\nDiem ban nhap khong hop le! Xin Kiem tra lai!";
}
} while (a[i].Ly < 0 || a[i].Ly > 10);
do
{
cout << "\nNhap Diem Hoa: ";
cin >> a[i].Hoa;
if (a[i].Hoa < 0 || a[i].Hoa > 10)
{
cout << "\nDiem ban nhap khong hop le! Xin Kiem tra lai!";
}
} while (a[i].Hoa < 0 || a[i].Hoa > 10);
}
for (int i = 0; i < n; i++)
{
a[i].DiemTrungBinh = (a[i].Toan * 3 + a[i].Ly * 2 + a[i].Hoa * 2) / 7;
}
for (int i = 0; i < n - 1; i++)
{
for (int j = i + 1; j < n; j++)
{
if (a[i].DiemTrungBinh < a[j].DiemTrungBinh)
{
swap(a[i], a[j]);
}
}
}
cout << "\nSTT\tDiem Toan\tDiemLy\tDiemHoa\tDTB\tXH\n\n";
for (int i = 0; i < n; i++)
{
string XepHang;
if (a[i].DiemTrungBinh >= 0 && a[i].DiemTrungBinh <= 4)
XepHang = "Yeu";
else if (a[i].DiemTrungBinh <= 5.5)
XepHang = "TB";
else if (a[i].DiemTrungBinh <= 7)
XepHang = "Kha";
else if (a[i].DiemTrungBinh <= 8.5)
XepHang = "Gioi";
else if (a[i].DiemTrungBinh <= 10)
XepHang = "Xuat Sac";
cout << "\n" << i + 1 << "\t\t" << a[i].Toan << "\t " << a[i].Ly << "\t " << a[i].Hoa << "\t " << a[i].DiemTrungBinh << "\t" << XepHang;
}
delete[] a;
return 0;
}
Revise this Paste