Untitled
unknown
plain_text
a year ago
2.3 kB
5
Indexable
#include<bits/stdc++.h>
using namespace std;
#define MAX 8
#define ll long long
struct HangHoa{
string maHang;
string tenHang;
string dVTinh;
int donGia;
int soLuong;
};
struct List{
int count;
HangHoa e[MAX];
};
void nhapHangHoa(HangHoa &hh){
cout << "Nhap ma hang\n";
getline(cin,hh.maHang);
cout << "Nhap ten hang\n";
getline(cin,hh.tenHang);
cout << "Nhap don vi tinh\n";
getline(cin,hh.dVTinh);
cout << "Nhap don gia \n";
cin >> hh.donGia;
cout << "Nhap so luong\n";
cin >> hh.soLuong;
cin.ignore();
}
void nhapDS(List &L){
HangHoa x; L.count = -1;
List initializer_list(L);
for(int i = 0; i < 6; i++){
cout << "nhap hang thu " << L.count+1 << endl;
nhapHangHoa(x);
++L.count;
L.e[L.count] =x;
}
}
void hienDS(List L){
cout << setw(5) << "STT";
cout << setw(10) << "MaHang";
cout << setw(10) << "TenHang";
cout << setw(10) << "DonViTinh";
cout << setw(10) << "DonGia";
cout << setw(10) << "SoLuong";
cout << setw(10) << "ThanhTien" << endl;
for(int i = 0; i < 6; i++){
++L.count;cout << setw(5) << i+1;
cout << setw(10) << L.e[i].maHang;
cout << setw(10) << L.e[i].tenHang;
cout << setw(10) << L.e[i].dVTinh;
cout << setw(10) << L.e[i].donGia;
cout << setw(10) << L.e[i].soLuong;
cout << setw(10) << L.e[i].donGia * L.e[i].soLuong<< endl;
}
}
void xoa(List &L, int k){
if(L.count < 0){
cout << "Danh sach rong\n";
return;
}
for(int i = k-1; i < L.count;i++){
L.e[i] = L.e[i+1];
}
--L.count;
}
void them(List &L, int k){
HangHoa x;
cout << "Nhap hang hoa can bo sung\n";
nhapHangHoa(x);
for(int i = L.count+1; i>= k; i--){
L.e[i] = L.e[i-1];
}
L.e[k-1] = x;
}
void sapxep(List&L)
{
for (int i=0; i< L.count-1; i++){
for (int j= L.count-1; j>i; j--){
int tmp1 = L.e[j].donGia * L.e[j].soLuong;
int tmp2 = L.e[j-1].donGia * L.e[j-1].soLuong;
if (tmp1 < tmp2 )
{
int tmp = tmp1;
tmp1 = tmp2;
tmp2 = tmp;
}
}
}
}
int main(){
List L; int k, l;
nhapDS(L);
hienDS(L);
cout << "Nhap vi tri can bo sung" << endl; cin >> k;
them(L,k);
hienDS(L);
cout << "Nhap vi tri can xoa"; cin >> l;
xoa(L,l);
hienDS(L);
sapxep(L);
hienDS(L);
}Editor is loading...
Leave a Comment