Lập trình C dành cho người mới bắt đầu, giúp bạn làm quen với ngôn ngữ lập trình C. Hiểu được cấp trúc, câu lệnh, vv vv ..... Lập trình C dành cho người mới bắt đầu, giúp bạn làm quen với ngôn ngữ lập trình C. Hiểu được cấp trúc, câu lệnh, vv vv ..... Lập trình C dành cho người mới bắt đầu, giúp bạn làm quen với ngôn ngữ lập trình C. Hiểu được cấp trúc, câu lệnh, vv vv ..... Lập trình C dành cho người mới bắt đầu, giúp bạn làm quen với ngôn ngữ lập trình C. Hiểu được cấp trúc, câu lệnh, vv vv ..... Lập trình C dành cho người mới bắt đầu, giúp bạn làm quen với ngôn ngữ lập trình C. Hiểu được cấp trúc, câu lệnh, vv vv ..... Lập trình C dành cho người mới bắt đầu, giúp bạn làm quen với ngôn ngữ lập trình C. Hiểu được cấp trúc, câu lệnh, vv vv ..... Lập trình C dành cho người mới bắt đầu, giúp bạn làm quen với ngôn ngữ lập trình C. Hiểu được cấp trúc, câu lệnh, vv vv ..... Lập trình C dành cho người mới bắt đầu, giúp bạn làm quen với ngôn ngữ lập trình C. Hiểu được cấp trúc, câu lệnh, vv vv ..... Lập trình C dành cho người mới bắt đầu, giúp bạn làm quen với ngôn ngữ lập trình C. Hiểu được cấp trúc, câu lệnh, vv vv .....
Trang 1cout<<"\n Nhap phan thuc:"; cin>>pt;
cout<<"\n Nhap phan ao: "; cin>>pa;
Trang 2#include<math.h>
using namespace std;
/* chuong trinh phan so
du lieu: tu so, mau so
phuong thuc: nhap, toi gian, in tinh tong
*/
class PS {
//khai bao thanh phan du lieu
private: //khai bao quyen truy xuat du lieu cua bien luon la private
void PS::nhap() { // neu ko co PS:: thi ham nhap() o day la ham nhap tu do
cout<<"\n Nhap tu so:"; cin>>ts;
cout<<"\n Nhap mau so:"; cin>>ms;
/* kiem tra xem mau so co khac 0 hay ko
*/
};
//ham toi gian phan so
Trang 3void PS::toigian(PS &pso) {
PS p; //p la doi tuong cua lop phan so, p co kieu dl la phan so
//cin>>p.ts; // neu khong khai bao quyen truy xuat, buoc nay se bi loi not accessible p.nhap(); //neu phuong thuc ko de public thi se ko co quyen xuat buoc nay
Câu 4: Xây dựng mảng 1 chiều
//nhap vao mang 1 chieu co n phan tu
Trang 4cout<<"Nhap so phan tu: "; cin>>n;
for (int i=1; i<=n; i++){
cout<<"\na["<<i<<"] = "; cin>>a[i];}
cout<<"Khong cong duoc";
} else
Trang 5}friend int layspt(mang x);
friend ostream &operator<<(ostream &os, mang x);friend istream &operator>>(istream &is, mang &x);};
ostream &operator<<(ostream &os, mang x)
Trang 6// Xay dung lop nguoi
// DL: hoten, nam sinh, gioi tinh
Trang 7Câu 6: Quản lý sinh viên (masv, hoten, diem, )
/* Lop sinh vien
DL: masv, hoten, masv, diem
Trang 8cout<<"Nhap diem thi: "; cin>>diem;
}
void SV::in(){
cout<<masv<<"t"<<hoten<<"t"<<diem<<endl;}
cout << "Nhap so luong sinh vien: ";cin>>n;
for(i = 1;i <= n;i++){
cout<< "SV thu " << i << endl;
ds[i].nhap();
}
for(i = 1;i <= n;i++){
cout<< "SV thu " << i << endl;
Trang 9Câu 7: Quản lý lớp sinh viên kế thừa từ lớp NGUOI
/*Xay dung lop nguoi
DL: hoten, nam sinh, gioi tinh
cout<<"\nNhap nam sinh:";cin>>ns;
cout<<"\n Nhap gioi tinh:";cin>>gt;
Trang 10public:
void nhap()
{ NGUOI::nhap();
cout<<"\nNhap lop: ";cin>>lop;
cout<<"\nNhap diem: ";cin>>dt;
Trang 11void nhapNV(){
cin.ignore();
cout << "\nHo va ten nhan vien: ";
getline(cin, ht);
cout << "\nNgay sinh: "; cin >> ns;
cout << "\nGioi tinh: "; cin >> gt;
cout << "\nHe so luong: "; cin >> hsl;
cout << "\nTien phu cap chuc vu: "; cin >> tien;
Trang 12class Hopdong:public Nhanvien{
void in(){
inNV();
cout << "\n Tien cong lao dong: " << tc;
cout << "\n So ngay lam viec: " << snlv;
cout << "\n He so vuot gio: " << hsvg << endl; }
Trang 13Câu 9: Nhập và in ra danh sách thông tin sinh viên và giáo viên kế thừa từ lớp người:
cout<<endl <<"Ho va ten: "<<ht;
cout<<endl << "Gioi tinh: "<<gt;
cout<<endl <<"Tuoi : "<<tuoi;
}
Trang 15cout << "Nhap he so luong : "; cin >> hsLuong;
cout << "Nhap phu cap : "; cin >>phuCap;
}
void In()
{
NGUOI::In();
cout<<endl <<"Ten bo mon : " << boMon;
cout<<endl << "He so luong : "<< hsLuong;
cout<<endl << "Phuc cap : "<< phuCap;
cout<<endl <<"Luong cua giao vien la : "<<TinhLuong(); }
Trang 17cout<<"\n nhap ten vat tu: "; cin.getline(tenvt,20);
cout<<"\n nhap ngay lap: "; cin>>date;
cout<<"\n nhap khoi luong: "; cin>>kl;
cout<<"\n nhap don gia: "; cin>>dg;
Trang 18/* Du lieu: ho ten, gioi tinh, ngay sinh, diem tin, diem toan,
tinh diem trung binh, in
float dTin, dToan, dNN;
//khai bao ham phuong thuc
Trang 19cout<<"\n Gioi tinh: "; cin.getline(gioitinh,5);
cout<<"\nNgay sinh: "; cin.getline(ns,15);
cout<<"\n Nhap vao diem Tin: "; cin>>dTin;
cout<<"\n Nhap vao diem Toan: "; cin>>dToan;cout<<"\n Nhap vao diem Ngoai Ngu: "; cin>>dNN;}
int max = a[0], min = a[0];
for (int i = 0; i < n; i++) {
if (max < a[i]){
max = a[i];
Trang 20void nhap(int a[],int &n){
cout << "nhap so phan tu mang:";cin >> n;
Trang 21void nhap(int a[],int &n){
cout << "nhap so phan tu mang:";cin >> n; for(int i = 0; i < n; i++){
Trang 22void nhap(int a[],int &n){
cout << "nhap so phan tu mang:";cin >> n;
Trang 23cout << "nhap ho ten : ";cin.ignore();getline(cin,ht);
cout << "nhap ngay sinh/thang/nam sinh: ";cin >> ngay >> thang >> nam; cout << "nhap gioi tinh: ";cin.ignore();getline(cin,gt);
cout << "nhap diem toan: ";cin >> dtoan;
cout << "nhap diem tin: ";cin >> dtin;
cout << "nhap diem ngoai ngu: ";cin >> dnn;
dtb = (dtoan + dtin + dnn)/3;
}
void sv::xuat(){
Trang 24cout << "ho ten: "<< ht << endl;
cout << "ngay/thang/nam sinh: "<< ngay <<"/"<< thang<<"/"<< nam << endl; cout << "gioi tinh: "<< gt << endl;
cout << "diem toan: "<< dtoan << endl;
cout << "diem tin : "<< dtin << endl;
cout << "diem ngoai ngu: "<< dnn << endl;
cout << "diem trung binh: "<< dtb << endl;
16 /*xay dung ctdl mo ta cac hoa don
du lieu:mavt,tenvt,loaipieu,ngay lap,kg,dgia,thanh tien
phuong thuc : nhap,tinh thanh tien,in */
cout << "ten vat tu: ";cin.ignore();getline(cin,tenvt);
cout << "ma vat tu: ";cin >> mavt;
cout << "ngay/thang/nam lap: ";cin >> ngay >> thang >> nam;
cout << "so luong: ";cin >> kg;
cout << "don gia: ";cin >> dgia;
Trang 25void VTu::xuat(){
cout << "ten vat tu: "<< tenvt << endl;
cout << "ma vat tu: "<< mavt << endl;
cout << "ngay/thang/nam lap: "<< ngay<<"/"<<thang<<"/"<<nam<<endl; cout << "so luong: "<< kg << endl;
cout << "don gia: "<< dgia << endl;
cout << "nhap so luong vat tu: ";cin>>n;
for(i = 1;i <= n;i++){
cout<< "VT thu " << i << endl;
17 /*chung trinh xay dung lop ma tran
phuong thuc: nhap,inkq
input : so hang, so cot
void MTran :: nhap(){
cout << "nhap so cot m: ";cin >> m;
cout << "nhap so hang n: ";cin >>n;
for(int i = 0; i < n; i++){
for(int j = 0; j < n; j++){
cout << "a["<< i <<"]["<<j<<"] = ";
Trang 26cin >> a[i][j];
}
}
}
void MTran :: xuat(){
cout << "ma tran vua nhap la:";
Trang 27friend istream& operator>>(istream &, PS &); friend ostream& operator<<(ostream & ,const PS); int ucln(int a,int b);
Trang 29SP operator*(SP c);
SP operator/(SP c);
};
istream& operator>>(istream &is, SP &c){
cout << "nhap phan thuc: ";
Trang 30cout << "so phuc vua nhap: "<< a << endl;
cout << "so phuc vua nhap: "<< b << endl;
c = a.operator+(b);
cout << "a + b = " << c << endl;
cout << "a - b = " << a-b << endl;
cout << "a * b = " << a*b << endl;
cout << "a / b = " << a/b << endl;
istream& operator>>(istream &is, VT &b){
cout << "nhap so phan tu cua VT : ";
Trang 31for(int i = 1; i <=a.n ; i++){
c.ds[i] = ds[i] + a.ds[i];
for(int i = 1; i <=a.n ; i++){
c.ds[i] = ds[i] - a.ds[i];
for(int i = 1; i <=a.n ; i++){
c.ds[i] = ds[i] * a.ds[i];
cout <<"tong 2 vecto: " << a + b << endl;
cout << "hieu 2 vecto: " << a - b << endl;
cout << "tich 2 vecto: " << a * b << endl;
Trang 32istream& operator>>(istream & is, MT &b){
cout << "nhap so cot m: ";is >> b.m;
cout <<"nhap so hang n: "; is >> b.n;
ostream& operator<<(ostream & os ,MT b){
os << "ma tran vua nhap: ";
Trang 3322 ví du về ham ban giua 2 lop class
void nhap(int a){
this ->a = a; //dung con tro luu gia tri cua a khi dduoc khoi tao
}
void in(){
cout <<"lop 1 co a = "<< a<<endl;
}
friend int min(LOP1,LOP2); //ham ban phai duoc khai bao chung cua ca 2 lop
co the truy cap dlieu thanh vien private cua ca 2 lop.
friend int min(LOP1,LOP2);
}; // ham ban C2: friend void max(LOP1,LOP2); DUNG HAM VOID int min(LOP1 L1,LOP2 L2){ // void min(tuong tu){ cout << L1.a
Trang 34l2.in(); // ham void : min(l1,l2);
cout<<"gia tri nho nhat cua 2 lop:" << min(l1,l2) <<endl;
friend istream& operator>>(istream &, HD &);
friend ostream& operator<<(ostream &,const HD);
friend float tien(HD);
// ~HD(){
// sluong ;
// }
};
float tien(HD a){
a.tien = a.kg * a.dg;
return a.tien;
}
istream& operator>>(istream &is , HD &a){
cout << "nhap mavt: "; is >> a.mavt;
cout << "nhap ten vtu: ";cin.ignore();getline(is,a.tenvt);
cout << "nhap so luong kg: "; is >> a.kg;
cout << "nhap don gia: "; is >> a.dg;
return is;
}
ostream& operator<<(ostream &os,HD a){
os << " Thong tin hoa don: " <<endl;
os << " Mavt: " <<a.mavt <<endl;
Trang 35os << " Ten vtu: " << a.tenvt <<endl;
os << " So luong kg: "<< a.kg <<endl;
os << " Don gia: " << a.dg<<endl;
os << " Tong tien = "<< tien(a);
phuong thuc: nhap;in, cong 2 sp
-xay dung lop SP2 ke thua tu SP1 gom co:
Trang 36kq.pa = (this->pt * a.pa) + (this->pa * a.pa);
kq.pt = (this->pt * a.pt) - (this->pa * a.pa);
Trang 38int n;
float c= 0,d= 0;
cout<<"nhap sso so phuc: ";cin>>n;
for(int i = 1; i<= n; i++){
cout<<"nhap so phuc thu:"<<i<<endl;
p[i].nhap();
}
cout<<"cac so phuc vua nhap:"<<endl;
for(int i = 1; i<= n; i++){
p[i].in();
}
cout<<endl;
for(int i = 1; i<= n; i++){
c = c+ (p+i)->pt; // gtri &p[i].pthuc
pl: dinh nghia lai pt nhap,in day du tt
CTC: nhap mang NV co n nguoi(n<20),in ds.)
Trang 39cout <<"nhap ngay sinh: ";cin>>ngay;
cout <<"nhap thang sinh :";cin>>thang;
cout <<"nhap nam sinh: "; cin>>nam;
cout<<"nhap ho ten: ";cin.ignore();getline(cin,ht);
cout<<"nhap dia chi: ";cin.ignore();getline(cin,dc);
Trang 40void in(){
NGUOI :: in();
cout <<pban<<endl<<hsl<<endl<<pcap<<endl; }
for(i = 1; i<= n; i++){
cout<<"hien thi thong tin nhan vien "<<i<<endl; ds[i].in();
Trang 42friend istream& operator>>(istream &, PS1 &);
friend ostream& operator<<(ostream & ,const PS1);
Trang 43cout<<"chon cv thuc hien!"<<endl;
cout<<"1.thao tac voi phan so thu 1!"<<endl; cout<<"2.thao tac voi phan so thu 2!"<<endl; cout<<"3.thoat!"<<endl;
cout<<"phan so 2:";b.in();
c = a.tong(b);
cout<<"tong 2 phan so :";c.in();
cout<<endl;
Trang 45void NGUOI :: nhap(){
cout <<"nhap ho ten: "; cin.ignore();getline(cin,ht);
cout <<"nhap gioi tinh: ";cin.ignore();getline(cin,gt);
cout <<"nhap nam sinh: ";cin >> ns;
}
void NGUOI :: in(){
cout <<"thong tin: "<<endl<< ht <<endl <<gt<<endl<<ns<<endl;}
class SV : public NGUOI{
NGUOI :: in(); //lop SV ke thua ham in tu lop NGUOI
cout << lop <<endl<<dtb<<endl; //in them 1 so doi tuong rieng }
};
void SV :: nhapsv(){
NGUOI :: nhap(); //lop SV ke thua ham nhap tu lop NGUOI
cout <<"nhap lop: ";cin.ignore();getline(cin,lop);
cout <<"nhap dtb: ";cin>>dtb;
cout <<"nhap don vi cong tac :";cin.ignore();getline(cin,dvi);
cout <<"nhap he so luong: ";cin>>hsl;
Trang 46GV c[50],*q = c; //tuong tu voi giao vien
for(int i = 1; i<= n; i++){
void in(){
Trang 47cout <<"ngay/thang/nam: "<<ngay<<"/"<<thang<<"/"<<nam<<endl; }
cout<<"nhap ho ten: ";cin.ignore();getline(cin,ht);
cout<<"nhap dia chi: ";cin.ignore();getline(cin,dc);
Trang 48for(i = 1; i<= n; i++){
cout<<"hien thi thong tin nhan vien "<<i<<endl;
virtual void nhap(){
cout <<"->nhap ho ten: ";cin.ignore();getline(cin,ht);
cout <<"nhap nam sinh: ";cin>>ns;
}
virtual void in(){
cout << "thong tin: " << ht<< ns<<endl;
cout <<"nhap bo mon day: ";cin.ignore();getline(cin,bmon);
cout <<"nhap he so luong: ";cin>>hsl;
Trang 49cout <<"nhap lop: ";cin.ignore();getline(cin,lop);
cout <<"nhap diem trung binh: ";cin>>dtb;
cout <<"1.nhap danh sach:"<<endl;
cout <<"2.in danh sach sinh vien:"<<endl;
cout <<"3.in danh sach giao vien:"<<endl;
cout <<"4.ket thuc!"<<endl;
cin >> lc;
switch(lc){
case 1:
cout <<"nhap so nguoi :";cin>>n;
cout <<"chon giao vien nhap: 1 /sinh vien nhap: 2"<<endl; int k;
cout<< "chon 1 or 2 : "; cin>>k;
cout <<"->danh sach sinh vien: "<<endl;
for(int i = 1; i<= n;i++){