bài tập chương 1 của c++

50
#include <iostream> #include<conio.h> using namespace std; class Clock { int gio, phut, giay; public: Clock() { gio = phut = giay = 0; } Clock(int h, int m, int s){ gio = h; phut = m; giay = s; } void Nhap() { cout<<"Nhap gio: "; cin >> gio; cout<<"Nhap phut: "; cin >> phut; cout<<"Nhap giay: "; cin >> giay; } void HienThi() { cout<<gio<<":"<<phut<<":"<<giay; } void LamTron(); Clock Cong(int n){ Clock kq(gio, phut, giay); kq.phut += n; kq.LamTron(); return kq; } // .... }; void Clock::LamTron() { phut += giay/60; giay %= 60; gio += phut / 60; phut %= 60; // gio %= 24; // Tuy theo muc tieu } main() { Clock a ( 9,15,38 ); cout<<"Gio a: "; a.HienThi(); cout<<endl; Clock b; cout<<"Nhap gia tri cho b: "<<endl; b.Nhap(); cout<<"Gio b: ";b.HienThi(); cout<<endl; Clock c = b.Cong(1); cout<<"Gio b sau khi cong 45 phut: "; c.HienThi(); cout<<endl; getch(); } Bài về tháng năm 1. #include<iostream> #include<conio.h> using namespace std; class Date { int ngay, thang, nam; public:

Upload: tran-trong

Post on 08-Nov-2014

59 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: bài tập chương 1 của C++

#include <iostream> #include<conio.h> using namespace std; class  Clock {         int        gio, phut, giay;     public:         Clock() {             gio = phut = giay = 0;         }         Clock(int   h, int   m, int   s) {             gio = h;  phut = m;  giay = s;         }         void    Nhap() {             cout<<"Nhap gio: "; cin >> gio;             cout<<"Nhap phut: "; cin >> phut;             cout<<"Nhap giay: "; cin >> giay;         }         void    HienThi() {             cout<<gio<<":"<<phut<<":"<<giay;         }         void  LamTron();         Clock  Cong(int  n) {             Clock kq(gio, phut, giay);             kq.phut += n;             kq.LamTron();             return kq;         }         // .... }; void  Clock::LamTron() {         phut += giay/60;         giay %= 60;         gio += phut / 60;         phut %= 60;     //    gio %= 24;        // Tuy theo muc tieu } 

main() {     Clock a ( 9,15,38 ); cout<<"Gio a: "; a.HienThi(); cout<<endl;     Clock  b; cout<<"Nhap gia tri cho b: "<<endl; b.Nhap();      cout<<"Gio b: ";b.HienThi(); cout<<endl;     Clock c = b.Cong(1);     cout<<"Gio b sau khi cong 45 phut: "; c.HienThi(); cout<<endl; getch(); }  

Bài về tháng năm1. #include<iostream> 

#include<conio.h> using namespace std; class Date {         int     ngay, thang, nam;     public:         Date() {             ngay = 1; thang = 1; nam = 2000;         }         Date(int     d, int  m, int y) {             ngay = d; thang = m; nam = y;         }         void Nhap();         void HienThi() {             cout<<ngay<<"/"<<thang<<"/"<<nam;         }         int        HopLe(); 

Page 2: bài tập chương 1 của C++

        Date  Cong();         Date  Cong(int  n); }; 

void Date::Nhap() {         while(1) {             cout<<"Nhap ngay: "; cin>>ngay;             cout<<"Nhap thang: "; cin>>thang;             cout<<"Nhap nam: "; cin>>nam;             if(HopLe())        break;                 cout<<"Nhap khong hop le - Nhap lai !!! "<<endl;         }     } 

int        Date::HopLe() {     if(ngay<=0 || thang<=0 || thang>12)         return 0;     if(thang==2 && nam%4==0)              return (ngay<=29);     int  songay[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };     return   (ngay <= songay[ thang ] );     /* if (thang == 2)             return  (ngay<=28);      else             if (thang==4 || thang == 6 || thang == 9 || thang == 11)                 return (ngay <= 30);             else                 return (ngay <= 31);     */ } 

Date  Date::Cong() {         Date  kq = *this;         if(kq.ngay==28 && kq.thang ==2 && kq.nam%4==0)             return Date(29,2,nam);         kq.ngay ++;         int  songay[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };         if  (kq.ngay > songay[kq.thang]) {             kq.thang++;             kq.ngay = 1;         }         if (kq.thang > 12 ) {             kq.nam ++;             kq.thang = 1;         }         return kq; } 

Date  Date::Cong(int  n) {     Date    kq = *this;     for(int i=0; i<n; i++)         kq = kq.Cong();     return kq; } 

main() {     Date    d1;     cout<<"Nhap gia tri: "<<endl;     d1.Nhap();     d1.HienThi(); 

Page 3: bài tập chương 1 của C++

    cout<<"Nhap so ngay can cong them: ";     int        n; cin>>n;     cout<<"Ngay ket qua sau khi cong them "<<n<<" ngay: ";     d1.Cong(n).HienThi(); getch(); }  

BÀI VIẾT CÙNG CHUYÊN MỤC

bài tập về tệp trong C Xử lý lỗi bỏ qua khi dùng hàm gets và... Trọn bộ hơn 130 video học lập trình C# Giáo trình C của Aptech [Elementary... Một số dạng bài tập C++ cơ bản Bạn nào có các bài tập đầy đủ về C up lên... [Nâng Cao] Simple C# FTP Class Automatically localizing applications with... [Nâng cao] C# Native Interop: Methods and... Tài liệu C# cơ bản, có kém theo ví dụ minh...

Thiên địa bất nhânVĩ vạn vật vi xô cẩu

Trả lời với trích dẫn

2. Có 2 người cảm ơn ttjkbongdem bài viết này:

hntvip, ThanhNhanTN3. 03-15-2012, 05:38 PM#2

ttjkbongdem 

Quản LýTham gia ngày

Oct 2011Đến từ

zao hoaBài gửi

489Điểm

2.725,49Cảm ơn

74Được Cảm ơn 132/74

 Buổi 2

Bài 1: PHP Code:#include<iostream>#include<conio.h>using namespace std;class PhanSo{private: int tuso,mauso;public:PhanSo();PhanSo(int tu,int mau);void NhapPS();void InPS();void NghichDao();

Page 4: bài tập chương 1 của C++

PhanSo GiaTriNghichDao();float GiaTriThuc();int SoSanh(PhanSo a);PhanSo operator+(PhanSo a);PhanSo operator-(PhanSo a);PhanSo operator*(PhanSo a);PhanSo operator/(PhanSo a);void RutGon();};PhanSo::PhanSo(){ tuso=0; mauso=1;               }PhanSo::PhanSo(int tu,int mau){ tuso=tu; mauso=mau;                  }void PhanSo::NhapPS(){ cout<<"Nhap tu : ";cin>>tuso; do { cout<<"Nhap mau : ";cin>>mauso;} while(mauso==0);    }void PhanSo::InPS(){if(mauso<0) cout<<-tuso<<"/"<<-mauso;else cout<<tuso<<"/"<<mauso;     }void PhanSo::NghichDao(){int temp=tuso;tuso=mauso;mauso=temp;     }PhanSo PhanSo::GiaTriNghichDao(){PhanSo temp;temp.tuso=mauso;temp.mauso=tuso;return temp;       }float PhanSo::GiaTriThuc(){ return float(tuso)/float(mauso);     }int PhanSo::SoSanh(PhanSo a){float temp=GiaTriThuc()-a.GiaTriThuc()   ;if(temp==0) return 0;else if(temp>0)return 1;else return -1;}PhanSo PhanSo::operator*(PhanSo a){PhanSo result;result.tuso=tuso*a.tuso;result.mauso=mauso*a.mauso;

Page 5: bài tập chương 1 của C++

return result;       }PhanSo PhanSo::operator/(PhanSo a){ PhanSo result;result.tuso=tuso*a.mauso;result.mauso=mauso*a.tuso;return result;    }PhanSo PhanSo::operator+(PhanSo a){PhanSo result;result.tuso=tuso*a.mauso+mauso*a.tuso;result.mauso=mauso*a.mauso;return result;       }PhanSo PhanSo::operator-(PhanSo a){PhanSo result;result.tuso=tuso*a.mauso-mauso*a.tuso;result.mauso=mauso*a.mauso;return result;       }int UCLN(int a,int b){int temp;while(b>0){temp=a%b;a=b;b=temp;          }    return a;    }void PhanSo::RutGon(){ mauso=mauso/UCLN(tuso,mauso); tuso=tuso/UCLN(tuso,mauso);}

main(){ PhanSo a(3,7),b(4,9); a.InPS();cout<<endl;     b.InPS();cout<<endl;PhanSo x,y;cout<<"nhap phan so x \n";x.NhapPS();x.InPS();cout<<endl;cout<<"nhap phan so y \n";y.NhapPS();y.InPS();cout<<endl;

x.GiaTriNghichDao().InPS();cout<<endl;cout<<a.SoSanh(b)<<endl;(a*b).InPS();cout<<endl;(a/b).InPS();cout<<endl;(x+y).InPS();PhanSo Mang[100];int n;cout<<"nhap so ptu cua mang : ";cin>>n;PhanSo tong;for(int i=0;i<n;i++){cout<<"nhap mang thu "<<i+1<<endl;Mang[i].NhapPS();tong=tong+Mang[i];}

Page 6: bài tập chương 1 của C++

cout<<"tong pt cua mang : ";tong.RutGon();tong.InPS();cout<<endl;//tim phan tu lon nhatint max=0;for(int i=1;i<n;i++)if(Mang[i].GiaTriThuc()>Mang[max].GiaTriThuc()) max=i;cout<<"phan so lon nhat : ";Mang[max].InPS();cout<<endl;//sap xep mangfor(int i=0;i<n;i++)for(int j=n-1;j>i;j--)if(Mang[i].SoSanh(Mang[j])>0){PhanSo temp;temp=Mang[i];Mang[i]=Mang[j];Mang[j]=temp;                             }for(int i=0;i<n;i++) {Mang[i].InPS();cout<<" ";}getch();      }  

Bài 2:chỉ có phần class ThueBaoDT (hàm main ta để riêng và lở tay xoá mất tiêu)PHP Code:#include<iostream>#include<conio.h>#include<string.h>using namespace std;class ThueBaoDT{private:char sdt[11];char* hoten;char* diachi;int sophut;public:ThueBaoDT();ThueBaoDT(char phone[11],char *name,char *address,int time);ThueBaoDT(const ThueBaoDT& a);~ThueBaoDT();ThueBaoDT &operator=(const ThueBaoDT& a);void NhapDT();void InDT();char *LayHoTen();char *LaySDT();char *LayDiaChi();char *LayTen();int Laysophut();int GiaCuoc();      };ThueBaoDT::ThueBaoDT(){hoten=new char[35];diachi=new char[100];strcpy(sdt,"");}ThueBaoDT::ThueBaoDT(char phone[11],char *name,char *address,int time){hoten=new char[35];diachi=new char[100];name=new char[35];

Page 7: bài tập chương 1 của C++

address=new char[100];strcpy(sdt,phone);strcpy(hoten,name);strcpy(diachi,address);sophut=time;}ThueBaoDT::ThueBaoDT(const ThueBaoDT &a){hoten=new char[35];diachi=new char[100];strcpy(sdt,a.sdt);strcpy(hoten,a.hoten);strcpy(diachi,a.diachi);sophut=a.sophut;}ThueBaoDT::~ThueBaoDT(){delete[] hoten;delete[] diachi;}ThueBaoDT& ThueBaoDT::operator=(const ThueBaoDT &a){delete[] hoten;delete[] diachi;hoten=new char[35];diachi=new char[100];strcpy(sdt,a.sdt);strcpy(hoten,a.hoten);strcpy(diachi,a.diachi);sophut=a.sophut;return *this;}void ThueBaoDT::NhapDT(){hoten=new char[35];diachi=new char[100];cout<<"Nhap so dien thoai : ";fflush(stdin);gets(sdt);cout<<"Nhap so ho ten : ";fflush(stdin);gets(hoten);cout<<"Nhap so dia chi : ";fflush(stdin);gets(diachi);cout<<"Nhap thoi gian goi : ";cin>>sophut;}void ThueBaoDT::InDT(){cout<<"----------------------------------"<<endl;cout<<"thong tin cua khac hang : "<<hoten<<endl;cout<<"so dien thoai "<<sdt<<endl;cout<<"dia chi : "<<diachi<<endl;cout<<"thoi gian goi : "<<sophut<<endl;    }char *ThueBaoDT::LayHoTen(){return hoten;}char *ThueBaoDT::LaySDT(){return sdt;}char *ThueBaoDT::LayDiaChi(){return diachi;

Page 8: bài tập chương 1 của C++

}char *ThueBaoDT::LayTen(){char *result=new char[40];int k=0;for(int i=strlen(hoten)-1;i>=0;i--){if(hoten[i]==' ')                {               for(int j=i+1;j<=strlen(hoten);j++) result[k++]=hoten[j];               return result;                 }}                 return hoten;}int ThueBaoDT::GiaCuoc(){int result=20000;result+=sophut*200;return result;   }  

Thiên địa bất nhânVĩ \\ạn vật vi xô cẩu

Trả lời với trích dẫn4. 03-15-2012, 05:50 PM#3

ttjkbongdem 

Quản LýLần sửa cuối bởi ttjkbongdem; 03-18-2012 lúc 11:39 AM

Tham gia ngàyOct 2011

Đến từzao hoa

Bài gửi489

Điểm2.725,49

Cảm ơn74Được Cảm ơn 132/74

 Buổi 3

Bài 1:PHP Code:#include<iostream> #include<conio.h> #include<string.h> using namespace std; class Gach{ private: 

Page 9: bài tập chương 1 của C++

char *maso,*mau; int soluong, chieudai, chieurong; float giaban; public: Gach(); Gach(char *ms,char *m,int sl,int cd,int cr); Gach(const Gach &g); ~Gach(); Gach operator=(const Gach &g); friend istream& operator>>(istream& cin,Gach &g); friend ostream& operator<<(ostream& cout,Gach &g); float GiaBanLe(); int DienTich() { return chieudai*chieurong*soluong; } friend int MauXam(Gach g[],int n); }; /////////////////////////////////////////////// Gach::Gach() { maso=new char[10]; mau=new char[10]; strcpy(maso,""); strcpy(mau,""); soluong=0; chieudai=0; chieurong=0; } Gach::Gach(char *ms,char *m,int sl,int cd,int cr) { maso=new char[10]; mau=new char[10]; strcpy(maso,ms); strcpy(mau,m); soluong=sl; chieudai=cd; chieurong=cr; } Gach::~Gach() { delete[]maso; delete[]mau;              } Gach::Gach(const Gach &g ) { maso=new char[10]; mau=new char[10]; strcpy(maso,g.maso); strcpy(mau,g.mau); soluong=g.soluong; chieudai=g.chieudai; chieurong=g.chieurong; } Gach Gach::operator=(const Gach &g) { delete[]maso; delete[]mau;              maso=new char[10]; mau=new char[10]; strcpy(maso,g.maso); strcpy(mau,g.mau); soluong=g.soluong; 

Page 10: bài tập chương 1 của C++

chieudai=g.chieudai; chieurong=g.chieurong; return *this;      } istream& operator>>(istream& cin,Gach &g) { cout<<"\nnhap ma so gach : ";fflush(stdin);gets(g.maso); cout<<"nhap mau gach : ";fflush(stdin);gets(g.mau); cout<<"nhap so luong  gach : ";cin>>g.soluong; cout<<"nhap chieu dai gach : ";cin>>g.chieudai; cout<<"nhap so luong gach : ";cin>>g.chieurong;      return cin; } ostream &operator<<(ostream& cout,Gach &g) { cout<<"\n In Thong tin : \n";      cout<<"-------------------------------"; cout<<"\nma so gach : "<<g.maso<<endl; cout<<"mau gach : "<<g.mau<<endl; cout<<"so luong  gach : "<<g.soluong<<endl; cout<<"chieu dai gach : "<<g.chieudai<<endl; cout<<"so luong gach : "<<g.chieurong<<endl;      return cout; } float Gach::GiaBanLe() { return giaban*0.2; } ///////////////////ham doc lap//////////////// int SoLuong(Gach g,int x,int y) { 

int dientich=x*y; int s=g.DienTich(); int result=dientich/s; if (dientich%s) result++; return result; } int MauXam(Gach g[],int n) { int dem=0; for(int i=0;i<n;i++) if(strcmp(g[i].mau,"xam")==0) dem++; return dem; } //////////////////////////////////////////// main() { Gach ds[100]; int n; cout<<"nhap so luong danh sach gach : ";cin>>n; for(int i=0;i<n;i++)  { cout<<"\nNhap danh sach thu "<<i+1; cin>>ds[i]; } for(int i=0;i<n;i++) { cout<<ds[i]; cout<<"dien tich : "<<ds[i].DienTich()<<endl; }; cout<<"so luong gach mau xam la : "<<MauXam(ds,n)<<endl; cout<<"so luong hop gach moi loai dung de loat dien tich 6x20 la :\n"; 

Page 11: bài tập chương 1 của C++

for(int i=0;i<n;i++) cout<<"loai "<<i+1<<" : "<<SoLuong(ds[i],6,20)<<endl; cout<<"-------------------------------------"<<endl; getch();      }  

Thiên địa bất nhânVĩ vạn vật vi xô cẩu

Trả lời với trích dẫn5. Những thành viên đã cảm ơn ttjkbongdem vì bài viết này

river6. 03-16-2012, 12:46 AM#4

ttjkbongdem 

Quản LýTham gia ngày

Oct 2011Đến từ

zao hoaBài gửi

489Điểm

2.725,49Cảm ơn

74Được Cảm ơn 132/74

 Buổi 3

Bai 2PHP Code:#include<iostream> #include<conio.h> #include<string.h> #include<fstream> using namespace std; class ThiSinh { private : char sbd[10]; int manghanh; int khuvuc; float diemthi[3]; public: char *hoten; ThiSinh(); ThiSinh(char s[10],char *ht,int mn,int kv,float a,float b,float c); 

ThiSinh(const ThiSinh &t); ~ThiSinh(); ThiSinh operator=(const ThiSinh &t); void NhapTS(); void HienThi(); void NhapDiem(); friend istream& operator>>(istream &cin,ThiSinh t); 

Page 12: bài tập chương 1 của C++

friend ostream& operator<<(ostream &cout,ThiSinh t); int BiDiemLiet(); int TrungTuyen(float diemchuan,int nghanh); friend void XuatFile(ThiSinh t[],int n); friend void NhapDiemThi(ThiSinh t[],int &n); }; //////////////////// //constructor ThiSinh::ThiSinh() { strcpy(sbd,""); hoten=new char[40]; strcpy(hoten,""); manghanh=0; khuvuc=0; diemthi[0]=diemthi[1]=diemthi[2]=0; } ThiSinh::ThiSinh(char s[10],char *ht,int mn,int kv,float a,float b,float c) { strcpy(sbd,s); //ht=new char[40]; hoten=new char[40]; strcpy(hoten,ht); manghanh=mn; khuvuc=kv; diemthi[0]=a; diemthi[1]=b; diemthi[2]=c; } 

ThiSinh::ThiSinh(const ThiSinh &t) { strcpy(sbd,t.sbd); hoten=new char[40]; strcpy(hoten,t.hoten); manghanh=t.manghanh; khuvuc=t.khuvuc; diemthi[0]=t.diemthi[0]; diemthi[1]=t.diemthi[1]; diemthi[2]=t.diemthi[2]; } 

ThiSinh::~ThiSinh() { delete[] hoten; } ThiSinh ThiSinh::operator=(const ThiSinh &t) { delete[] hoten; strcpy(sbd,t.sbd); hoten=new char[40]; strcpy(hoten,t.hoten); manghanh=t.manghanh; khuvuc=t.khuvuc; diemthi[0]=t.diemthi[0]; diemthi[1]=t.diemthi[1]; diemthi[2]=t.diemthi[2]; } //nhap xuat void ThiSinh::NhapDiem() { for(int i=0;i<3;i++) {cout<<"nhap diem mon "<<i+1<<" : 

Page 13: bài tập chương 1 của C++

";cin>>diemthi[i];} } void ThiSinh::NhapTS() { cout<<"Nhap So bao danh : ";fflush(stdin);gets(sbd); cout<<"Nhap ho ten : ";fflush(stdin);gets(hoten); cout<<"Nhap ma nghanh : ";cin>>manghanh; cout<<"Nhap khu vuc : ";cin>>khuvuc; //NhapDiem(); } void ThiSinh::HienThi() { //cout<<"\n---------In Thong Tin--------------\n"; cout<<"so bao danh : "<<sbd<<endl; cout<<"Ho Ten Ts : "<<hoten<<endl; cout<<"Ma Nghanh  : "<<manghanh<<endl; cout<<"Khu Vuc : "<<khuvuc<<endl; //for(int i=0;i<3;i++) //cout<<"Diem mon "<<i+1<<" la : "<<diemthi[i]<<endl; } //toan tu nhap xuat istream& operator>>(istream& cin,ThiSinh t) { cout<<"Nhap So bao danh : ";fflush(stdin);gets(t.sbd); cout<<"Nhap ho ten : ";fflush(stdin);gets(t.hoten); cout<<"Nhap ma nghanh : ";cin>>t.manghanh; cout<<"Nhap khu vuc : ";cin>>t.khuvuc; t.NhapDiem(); } ostream& operator<<(ostream &cout,ThiSinh t) { ofstream out_stream; out_stream.open("d:\\thisinh.txt"); out_stream<<"so bao danh : "<<t.sbd<<endl; out_stream<<"Ho Ten Ts : "<<t.hoten<<endl; out_stream<<"Ma Nghanh  : "<<t.manghanh<<endl; out_stream<<"Khu Vuc : "<<t.khuvuc<<endl; for(int i=0;i<3;i++) out_stream<<"Diem mon "<<i+1<<" la : "<<t.diemthi[i]<<endl; out_stream.close(); return cout; } int ThiSinh::BiDiemLiet() { for(int i=0;i<3;i++) if(diemthi[i]==0) return 1; return 0; } int ThiSinh::TrungTuyen(float diemchuan,int nghanh) { if(nghanh!=manghanh) return 0; 

switch (khuvuc) { case 1:diemchuan-=0.5;break; case 2:diemchuan-=1.0;break; case 3:diemchuan-=1.5;break; } float tongdiem=diemthi[0]+diemthi[1]+diemthi[2]; if(tongdiem>=diemchuan) return 1; } /////////////////////// //ham toan cuc  void Nhap(ThiSinh t[],int n) 

Page 14: bài tập chương 1 của C++

{ for(int i=0;i<n;i++) { cout<<"nhap ts thu "<<i+1<<endl; t[i].NhapTS();cout<<endl; } } void NhapDiemThi(ThiSinh t[],int &n) { for (int i=0;i<n;i++) { cout<<"Nhap diem cho Thi sinh co so bao danh : "<<t[i].sbd<<endl; t[i].NhapDiem(); } } 

void ThiSinhTT(ThiSinh t[],int n) { cout<<"-------------Danh Sach Trung Tuyen nganh 108--------------\n"; for(int i=0;i<n;i++) { if(t[i].TrungTuyen(18,108)) { t[i].HienThi(); cout<<"---------------"; } } } void ThiSinhBL(ThiSinh t[],int n) { cout<<"cac thi sinh bi diem liet "<<endl; for(int i=0;i<n;i++) { if(t[i].BiDiemLiet()) cout<<t[i].hoten<<endl; } } /* void XuatFile(ThiSinh t[],int n) { ofstream out_stream; out_stream.open("d:\\a\\thisinh.txt"); 

out_stream<<"\n---------In Thong Tin--------------\n"; for(int i=0;i<n;i++) { out_stream<<"Thong tin sinh vien thu "<<i+1<<endl; cout<<t[i]; } out_stream.close(); } */ void XuatFile(ThiSinh t[],int n) { ofstream out_stream; out_stream.open("d:\\thisinh.txt"); out_stream<<"\n---------In Thong Tin--------------\n"; for(int i=0;i<n;i++) { out_stream<<"Thong tin sinh vien thu "<<i+1<<endl; out_stream<<"so bao danh : "<<t[i].sbd<<endl; out_stream<<"Ho Ten Ts : "<<t[i].hoten<<endl; 

Page 15: bài tập chương 1 của C++

out_stream<<"Ma Nghanh  : "<<t[i].manghanh<<endl; out_stream<<"Khu Vuc : "<<t[i].khuvuc<<endl; for(int j=0;j<3;j++) out_stream<<"Diem mon "<<j+1<<" la : "<<t[i].diemthi[j]<<endl; } out_stream.close(); } void DocFile() { ifstream in_stream; in_stream.open("d:\\thisinh.txt"); char string[200]; in_stream.getline(string,200); puts(string); while(!in_stream.eof()) { in_stream.getline(string,200); puts(string); } in_stream.close(); } /////////////////////// main() { ThiSinh ts[200]; int n; cout<<"nhap so thi sinh : ";cin>>n; Nhap(ts,n); 

NhapDiemThi(ts,n); ThiSinhBL(ts,n); ThiSinhTT(ts,n); XuatFile(ts,n); cout<<"doc file \n"; DocFile(); getch(); }  

Thiên địa bất nhânVĩ vạn vật vi xô cẩu

Trả lời với trích dẫn7. 03-16-2012, 01:19 AM#5

ttjkbongdem 

Quản LýTham gia ngày

Oct 2011Đến từ

zao hoaBài gửi

489Điểm

2.725,49Cảm ơn

74Được Cảm ơn 132/74

Page 16: bài tập chương 1 của C++

 Buổi 3

Bai 3

PHP Code:#include<iostream> #include<conio.h> using namespace std; class PhanSo{ private: int tuso,mauso; public: PhanSo(); PhanSo(int tu,int mau); void NhapPS(); void InPS(); void NghichDao(); PhanSo GiaTriNghichDao(); float GiaTriThuc(); PhanSo operator+(PhanSo a); PhanSo operator-(PhanSo a); PhanSo operator*(PhanSo a); PhanSo operator/(PhanSo a); PhanSo operator=(const PhanSo &a); int operator==(PhanSo a); int operator!=(PhanSo a); int operator>(PhanSo a); void RutGon(); }; PhanSo::PhanSo() {  tuso=0;  mauso=1;                } PhanSo::PhanSo(int tu,int mau) {  tuso=tu;  mauso=mau;                   } void PhanSo::NhapPS() {  cout<<"Nhap tu : ";cin>>tuso;  do  {  cout<<"Nhap mau : ";cin>>mauso; }  while(mauso==0);     } void PhanSo::InPS() { if(mauso==1) cout<<tuso; else if(mauso<0) cout<<-tuso<<"/"<<-mauso; else cout<<tuso<<"/"<<mauso;       } void PhanSo::NghichDao() { int temp=tuso; tuso=mauso; mauso=temp;      } PhanSo PhanSo::GiaTriNghichDao() 

Page 17: bài tập chương 1 của C++

{ PhanSo temp; temp.tuso=mauso; temp.mauso=tuso; return temp;        } float PhanSo::GiaTriThuc() {  return float(tuso)/float(mauso);      } 

PhanSo PhanSo::operator*(PhanSo a) { PhanSo result; result.tuso=tuso*a.tuso; result.mauso=mauso*a.mauso; return result;        } PhanSo PhanSo::operator/(PhanSo a) {  PhanSo result; result.tuso=tuso*a.mauso; result.mauso=mauso*a.tuso; return result;     } PhanSo PhanSo::operator+(PhanSo a) { PhanSo result; result.tuso=tuso*a.mauso+mauso*a.tuso; result.mauso=mauso*a.mauso; return result;        } PhanSo PhanSo::operator-(PhanSo a) { PhanSo result; result.tuso=tuso*a.mauso-mauso*a.tuso; result.mauso=mauso*a.mauso; return result;        } ////////////////rut gon////////////////// int UCLN(int a,int b) { int temp; while(b>0) { temp=a%b; a=b; b=temp;           }     return a;     } void PhanSo::RutGon() {  mauso=mauso/UCLN(tuso,mauso);  tuso=tuso/UCLN(tuso,mauso); } //////////toan tu them vao////////////////// PhanSo PhanSo::operator=(const PhanSo &a) { tuso=a.tuso; mauso=a.mauso; return *this;        } 

Page 18: bài tập chương 1 của C++

int PhanSo::operator==(PhanSo a) { PhanSo b; b=*this; b.RutGon(); a.RutGon(); int t; (a.tuso==b.tuso)?(a.mauso==b.mauso)?t=1:t=0:t=0; return t;        } int PhanSo::operator!=(PhanSo a) { return !((*this)==a);        } int PhanSo::operator>(PhanSo a) { return GiaTriThuc()>a.GiaTriThuc();        } 

/////////////////////////////////// main() { PhanSo a(3,7),b(4,9); a.InPS();cout<<endl;      b.InPS();cout<<endl; PhanSo x,y; cout<<"nhap phan so x \n"; x.NhapPS(); x.InPS();cout<<endl; cout<<"nhap phan so y \n"; y.NhapPS(); y.InPS();cout<<endl; cout<<"phan so nghich dao cua x"<<endl; x.GiaTriNghichDao().InPS();cout<<endl; (a*b).InPS();cout<<endl; (a/b).InPS();cout<<endl; (x+y).InPS(); if(x>y)cout<<"ha"; /////////////////////////////// 

PhanSo Mang[100]; int n;cout<<"nhap so ptu cua mang : ";cin>>n; PhanSo tong; for(int i=0;i<n;i++){cout<<"nhap mang thu "<<i+1<<endl;Mang[i].NhapPS();tong=tong+Mang[i];} cout<<"tong pt cua mang : "; tong.RutGon();tong.InPS();cout<<endl; //tim phan tu lon nhat int max=0; for(int i=1;i<n;i++)if(Mang[i]>Mang[max]) max=i; cout<<"phan so lon nhat : ";Mang[max].InPS();cout<<endl; //sap xep mang for(int i=0;i<n;i++) for(int j=n-1;j>i;j--) if(Mang[j]>Mang[i]) { PhanSo temp; temp=Mang[i]; Mang[i]=Mang[j]; Mang[j]=temp;                              

Page 19: bài tập chương 1 của C++

} for(int i=0;i<n;i++) {Mang[i].InPS();cout<<" ";} 

getch();       }  

Thiên địa bất nhânVĩ vạn vật vi xô cẩu

Trả lời với trích dẫn8. 03-16-2012, 07:14 AM#6

hntvip 

Quản LýTham gia ngày

Oct 2011Bài gửi

504Điểm

4.120,64Cảm ơn

58Được Cảm ơn 40/25

chưa học nhưng mình cũng thank ^^Mọi người sẽ không bao giờ ngó ngàng đến lòng tự trọng của bạnđiều mà họ quan tâm chính là thành tựu mà bạn đạt

được!www.shopkeobong.weebly.co

mTrả lời với trích dẫn

9. 03-16-2012, 12:13 PM#7

lovely.cat 

Thành ViênTham gia ngày

Oct 2011Đến từ

DHCT _CNTTBài gửi

52Điểm

Page 20: bài tập chương 1 của C++

65,13Cảm ơn

31Được Cảm ơn 0/0

OMG! tên này là cứu tinh của đời mình nè, nhưng mà có đáp án sẳn kiểu này ko bjt có giỏi nổi ko

nhỉ?Bạn Khách hãy cùng lovely.cat xây dựng SinhVienTinHoc.Com nhé!

Trả lời với trích dẫn10. 03-16-2012, 01:22 PM#8

ttjkbongdem 

Quản LýTham gia ngày

Oct 2011Đến từ

zao hoaBài gửi

489Điểm

2.725,49Cảm ơn

74Được Cảm ơn 132/74

 Nguyên văn bởi lovely.cat OMG! tên này là cứu tinh của đời mình nè, nhưng mà có đáp án sẳn kiểu này ko bjt có giỏi nổi ko

nhỉ?

Bé Heo giỏi rùi sợ gì Mình post lên để các bạn tham khảo thui

chứ đâu bảo bạn copy rùi khỏi làm 

Thiên địa bất nhânVĩ vạn vật vi xô cẩu

Trả lời với trích dẫn11. 03-17-2012, 03:02 AM#9

ttjkbongdem 

Page 21: bài tập chương 1 của C++

Quản LýTham gia ngày

Oct 2011Đến từ

zao hoaBài gửi

489Điểm

2.725,49Cảm ơn

74Được Cảm ơn 132/74

 Buổi 4

[class Clock]PHP Code:#include<iostream> #include<conio.h> using namespace std; #ifndef Clock_HPP #define Clock_HPP 1 class  Clock { 

int  gio, phut, giay; 

public: 

         Clock(int=0, int=0, int=0); 

         void  In(); 

         void  Nhap(); 

         int  operator > (Clock); 

         Clock  operator + (int  sophut); 

         Clock  operator + (Clock ); 

}; #endif Clock::Clock(int s,int m,int h) { giay=s; phut=m; gio=h; } void Clock::Nhap() { cout<<"---------------"<<endl; cout<<"nhap gio : ";cin>>gio; cout<<"nhap phut : ";cin>>phut; cout<<"nhap giay : ";cin>>giay; } void Clock::In() { cout<<gio<<":"<<phut<<":"<<giay<<endl; } int Clock::operator>(Clock c) { 

Page 22: bài tập chương 1 của C++

int t=0; (gio>c.gio)?((phut>c.phut)?((giay>c.giay)?t=1:t=0):t=0):t=0; return t; } 

Clock  Clock::operator + (int  sophut) { phut+=sophut; phut=phut/60; giay=giay%60; gio=phut/60; phut=phut%60; } 

Clock  Clock::operator + (Clock c) { gio=c.gio; phut=c.phut; giay=c.giay; phut=phut/60; giay=giay%60; gio=phut/60; phut=phut%60; }  

[Class DATE]PHP Code:#include<iostream> #include<conio.h> using namespace std; #ifndef Date_HPP #define Date_HPP 1 class  Date { 

         int  ngay, thang, nam; 

     public: 

         Date(int=0, int=0, int=0); 

         void  In(); 

         void  Nhap(); 

         int  operator > (Date); 

         Date  operator + (int  songay); 

         Date  operator + (Date ); 

}; #endif Date::Date(int d,int m,int y) { ngay=d; thang=m; nam=y; } void Date::Nhap() { cout<<"nhap ngay : ";cin>>ngay; cout<<"nhap thang : ";cin>>thang; cout<<"nhap nam : ";cin>>nam; 

Page 23: bài tập chương 1 của C++

} void Date::In() { cout<<ngay<<"/"<<thang<<"/"<<nam<<endl; } 

int Date::operator>(Date c) { if(nam>c.nam) return 1; else if(nam==c.nam) if(thang>c.thang) return 1; else if(thang==c.thang) {if(ngay>c.ngay) return 1;} return 0; } 

Date  Date::operator + (int  songay) { Date  kq = *this; 

for(int i=0; i<songay; i++)         {         if(kq.ngay==28 && kq.thang ==2 && kq.nam%4==0)         kq.ngay++;         else         {         kq.ngay++;         int  n[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };         if  (kq.ngay > n[kq.thang]) {             kq.thang++;             kq.ngay = 1;         }         }         if (kq.thang > 12 ) {             kq.nam ++;             kq.thang = 1;         }         }         return kq; } 

Date  Date::operator + (Date  c) { Date  kq = *this; 

kq.nam+=c.nam; for(int i=0;i<c.thang;i++) { kq.thang++; if (kq.thang > 12 ) {             kq.nam++;             kq.thang = 1;         } } kq=kq+c.ngay;               return kq; }  

Bài 1:PHP Code:

Page 24: bài tập chương 1 của C++

#include "Date.hpp" class CauThuBD { char ms[7]; char *ten; char *clb; Date ngaysinh; float chieucao; public: CauThuBD(); CauThuBD(char *,char *,char *,Date,float); CauThuBD(const CauThuBD&); ~CauThuBD(); CauThuBD operator=(const CauThuBD &c); void Nhap(); void Xuat(); int  Test(Date  d); friend char *CaoNhat(CauThuBD ct[],int n); friend int U23(CauThuBD ct[],int n); friend char *CLBDN(CauThuBD ct[],int n); }; CauThuBD::CauThuBD() { strcpy(ms,""); ten=new char[50]; clb=new char[50]; Date d(1,1,1993); ngaysinh=d; chieucao=1.5; 

} CauThuBD::CauThuBD(char m[],char *t,char *c,Date d,float f) { strcpy(ms,m); ten=new char[50]; strcpy(ten,t); clb=new char[50]; strcpy(clb,c); ngaysinh=d; chieucao=f; 

} CauThuBD::CauThuBD(const CauThuBD &c) { strcpy(ms,c.ms); ten=new char[50]; strcpy(ten,c.ten); clb=new char[50]; strcpy(clb,c.clb); ngaysinh=c.ngaysinh; chieucao=c.chieucao; } 

CauThuBD::~CauThuBD() { delete[] ten; delete[] clb; } CauThuBD CauThuBD::operator=(const CauThuBD &c) { delete[] ten; delete[] clb; strcpy(ms,c.ms); 

Page 25: bài tập chương 1 của C++

ten=new char[50]; strcpy(ten,c.ten); clb=new char[50]; strcpy(clb,c.clb); ngaysinh=c.ngaysinh; return *this; } void CauThuBD::Nhap() { cout<<"Nhap ma so"; fflush(stdin); gets(ms); cout<<"Nhap ten"; fflush(stdin);gets(ten); cout<<"Nhap cau lac bo";fflush(stdin);gets(clb); ngaysinh.Nhap(); cout<<"Nhap chieu cao : ";cin>>chieucao; } void CauThuBD::Xuat() { cout<<"ms : "<<ms<<endl; cout<<"ten cau thu : "<<ten<<endl; cout<<"cau lac bo : "<<clb<<endl; cout<<"ngay sinh : ";ngaysinh.In(); cout<<"ms : "<<chieucao<<endl; } int  CauThuBD::Test(Date  d) { return ngaysinh>d; } 

//----------------ham toan cuc----------------- void Nhap(CauThuBD ds[],int n) { cout<<"-------------------------------"<<endl; cout<<"Nhap thong tin cho danh sach : "<<endl; for(int i=0;i<n;i++) { cout<<"nhap tt cau thu thu "<<i+1<<endl; ds[i].Nhap(); } } 

void Xuat(CauThuBD ds[],int n) { cout<<"---------------In Thog tin----------------"<<endl; for(int i=0;i<n;i++) { cout<<"nhap tt cau thu thu "<<i+1<<endl; ds[i].Xuat(); } } char *CaoNhat(CauThuBD ct[],int n) { int max=0; for(int i=1;i<n;i++) if(ct[i].chieucao>ct[max].chieucao) max=i; return ct[max].ten; } int U23(CauThuBD ct[],int n) { int kq=0; 

Page 26: bài tập chương 1 của C++

Date u(16,3,1988);//hom nay ngay 16/3/2011 //dem nguoi tu chua co sinh nha vao nam 24 tuoi for(int i=0;i<n;i++)if(ct[i].ngaysinh>u) kq++; return kq; } //Cau lac bo co nhieu cau thu nhat  char *CLBDN(CauThuBD ct[],int n) { char *cb=new char[100]; int m=0; int max=0; for(int i=0;i<n-1;i++) { m=1; for(int j=i;j<n;j++) { if(strcmp(ct[i].clb,ct[j].clb)==0) m++; if(m>max) strcpy(cb,ct[j].clb); } } 

return cb; } main() { CauThuBD ds[100]; int n; cout<<"Nhap so cau thu : "; cin>>n; Nhap(ds,n); cout<<"cau thu cao nhat : "<<CaoNhat(ds,n)<<endl; cout<<"so cau thu co the vao U23 :"<<U23(ds,n)<<endl; cout<<"cau lac bo co nhieu cau thu nhat  : "<<CLBDN(ds,n)<<endl; getch();      }  

Bai 2PHP Code:#include"Date.hpp" class ThueBaoDD { char sdt[11]; char cmnd[10]; char *hoten; Date ngayhh; long sotien; public: ThueBaoDD(); //ThueBaoDD(char dt[],char cm[],char *ten,Date ngay,long tien); khong can thiet ThueBaoDD(const ThueBaoDD &t); ~ThueBaoDD(); ThueBaoDD &operator=(const ThueBaoDD &t); void Nhap(); void Xuat(); int ConSD(Date HomNay); void  NapTien(Date ngaynap, long sotien); Date HanNghe(); long Goi(int sogiay); }; ////////////////////////////////////////////////// ThueBaoDD::ThueBaoDD() { strcpy(sdt,"0"); strcpy(cmnd,"0"); 

Page 27: bài tập chương 1 của C++

hoten=new char[50]; Date d(0,0,0); ngayhh=d; } /* ThueBaoDD::ThueBaoDD(char dt[],char cm[],char *ten,Date ngay,long tien) { strcpy(sdt,dt); strcpy(cmnd,cm); ngayhh=ngay; sotien=tien; } */ 

ThueBaoDD::ThueBaoDD(const ThueBaoDD &t) { strcpy(sdt,t.sdt); strcpy(cmnd,t.cmnd); hoten=new char[100]; strcpy(hoten,t.hoten); ngayhh=t.ngayhh; sotien=t.sotien; } ThueBaoDD::~ThueBaoDD() { delete[] hoten; } ThueBaoDD &ThueBaoDD::operator=(const ThueBaoDD &t) { delete[] hoten; strcpy(sdt,t.sdt); strcpy(cmnd,t.cmnd); hoten=new char[100]; strcpy(hoten,t.hoten); ngayhh=t.ngayhh; sotien=t.sotien; return *this; } void ThueBaoDD::Nhap() { cout<<"Nhap so dien thoai : ";fflush(stdin);gets(sdt); cout<<"Nhap so cmnd : ";fflush(stdin);gets(cmnd); cout<<"Nhap ho ten khach hang : ";fflush(stdin);gets(hoten); cout<<"Nhap Ngay HH : ";ngayhh.Nhap(); cout<<"Nhap so Tien : ";cin>>sotien; } void ThueBaoDD::Xuat() { cout<<"so dien thoai : "<<sdt<<endl; cout<<"cmnd : "<<cmnd<<endl; cout<<"Ho ten khach hang : "<<hoten<<endl; cout<<"ngay het han : ";ngayhh.In(); cout<<"So tien : "<<sotien<<endl; } int ThueBaoDD::ConSD(Date HomNay) { return (sotien>0&&HomNay>ngayhh); } void  ThueBaoDD::NapTien(Date ngaynap, long sotien) { if(sotien!=100000 && sotien!=200000 && sotien!=300000 && sotien!=500000) { 

Page 28: bài tập chương 1 của C++

                cout<<"So tien nap khong dung quy dinh"<<endl;                 return; } this->sotien += sotien; if(ngaynap>ngayhh) ngayhh=ngaynap; switch(sotien) { case 100000: ngayhh=ngayhh+30;break;//30, 70, 115, 215 ngày case 200000:ngayhh=ngayhh+70;break; case 300000:ngayhh=ngayhh+115;break; case 500000:ngayhh=ngayhh+215;break; } 

Date ThueBaoDD::HanNghe() { return ngayhh+10; } long ThueBaoDD::Goi(int sogiay) { long kq=138; if(sogiay>6) kq+=(sogiay-6)*23L; sotien-=kq; if(sotien<0) sotien=0; return kq; } ///////////// main() { ThueBaoDD phone; phone.Nhap(); Date ngaynap(17,3,2012); phone.NapTien(ngaynap,100000); phone.Xuat(); phone.Goi(10); phone.Goi(10); phone.Goi(10);phone.Goi(10); phone.Goi(6); cout<<"-------------------------------"; cout<<"sau khi goi : "<<endl; phone.Xuat(); getch(); }  

Thiên địa bất nhânVĩ vạn vật vi xô cẩu

Trả lời với trích dẫn12. 03-17-2012, 08:31 PM#10

lovely.cat 

Thành ViênTham gia ngày

Oct 2011Đến từ

DHCT _CNTT

Page 29: bài tập chương 1 của C++

Bài gửi52

Điểm65,13

Cảm ơn31Được Cảm ơn 0/0

coj lại bài thuê bao dùm cái koi, khanh! sao nó ra lạ lạ sao á

help me!Bạn Khách hãy cùng lovely.cat xây dựng SinhVienTinHoc.Com nhé!

Trả lời với trích dẫn13. 03-18-2012, 11:35 AM#11

ttjkbongdem 

Quản LýTham gia ngày

Oct 2011Đến từ

zao hoaBài gửi

489Điểm

2.725,49Cảm ơn

74Được Cảm ơn 132/74

Noi ki hon di, no ki o cho nao , de tui sua

Thiên địa bất nhânVĩ vạn vật vi xô cẩu

Trả lời với trích dẫn14. 03-18-2012, 07:21 PM#12

lovely.cat 

Thành ViênTham gia ngày

Oct 2011Đến từ

DHCT _CNTTBài gửi

Page 30: bài tập chương 1 của C++

52Điểm

65,13Cảm ơn

31Được Cảm ơn 0/0

thì tui chạy mà nó ko sắp xếp đúng, chỗ họ tên nó hiện mã khó hỉu (tui chạy = edit plus) còn bên DEV C thì btBạn Khách hãy cùng lovely.cat xây dựng SinhVienTinHoc.Com nhé!

Trả lời với trích dẫn15. 03-19-2012, 10:03 AM#13

ttjkbongdem 

Quản LýTham gia ngày

Oct 2011Đến từ

zao hoaBài gửi

489Điểm

2.725,49Cảm ơn

74Được Cảm ơn 132/74

 Nguyên văn bởi lovely.cat thì tui chạy mà nó ko sắp xếp đúng, chỗ họ tên nó hiện mã khó hỉu (tui chạy = edit plus) còn bên DEV C thì bt

Tưởng gì chứ cái đó là tại cái này nè #include<iostream> using namespace std; thay =#include<iostream.h> là xong

Thiên địa bất nhânVĩ vạn vật vi xô cẩu

Trả lời với trích dẫn16. 03-19-2012, 10:52 AM#14

ttjkbongdem 

Quản LýTham gia ngày

Oct 2011Đến từ

Page 31: bài tập chương 1 của C++

zao hoaBài gửi

489Điểm

2.725,49Cảm ơn

74Được Cảm ơn 132/74

 Buổi 5

Lớp Diem có sẳnPHP Code:#include<iostream> #include<conio.h> #include<math.h> using namespace std; #ifndef Diem_HPP #define Diem_HPP 1 class Diem{ private : int HoanhDo,TungDo; public:       Diem(int h=0,int t=0); void NhapDiem(); void InDiem(); int GiaTriX(); int GiaTriY(); float KhoangCach(Diem M);       }; #endif Diem::Diem(int h,int t) {  HoanhDo=h;  TungDo=t;               } void Diem::NhapDiem() { cout<<"nhap hoanh do : ";cin>>HoanhDo;      cout<<"nhap tung do : ";cin>>TungDo; } void Diem::InDiem() { cout<<"("<<HoanhDo<<","<<TungDo<<")";      } int Diem::GiaTriX() {  return HoanhDo;    } int Diem::GiaTriY() {     return TungDo; } float Diem::KhoangCach(Diem M) { float result; result=sqrt(((HoanhDo-M.HoanhDo)*(HoanhDo-M.HoanhDo))+((TungDo-M.TungDo)*(TungDo-M.TungDo)));return result;      }  

Bài 1:PHP Code:

Page 32: bài tập chương 1 của C++

#include"Diem.hpp" class DoanThang { Diem d1,d2; public: DoanThang(); DoanThang(Diem a1,Diem a2); DoanThang(int ax,int ay,int bx,int by); void Nhap(); void Xuat(); Diem vector() { Diem D(d2.GiaTriX()-d1.GiaTriX(),d2.GiaTriY()-d1.GiaTriY()); return D; } float DoDai(); float Goc();//Goc cua dt voi truc hoanh y=0 void Doi(int dx,int dy); }; /////////////prototype//////////// /////////constructor////////////// DoanThang::DoanThang(): d1(0,0),d2(0,0) { } DoanThang::DoanThang(Diem a,Diem b):d1(a.GiaTriX(),a.GiaTriY()),d2(b.GiaTriX(),b.GiaTriY()) { } DoanThang::DoanThang(int ax,int ay,int bx,int by):d1(ax,ay),d2(bx,by) { } ///////////Nhap Xuat//////////////////////// void DoanThang::Nhap() { cout<<"Nhap diem dau : ";d1.NhapDiem(); cout<<"Nhap diem cuoi : ";d2.NhapDiem(); } void DoanThang::Xuat() { cout<<"diem dau doan : ";d1.InDiem();cout<<endl; cout<<"diem cuoi doan : ";d2.InDiem();cout<<endl;     } ////////////////ham chuc nang khac//////////////////// float DoanThang::DoDai() { float kq=(d1.GiaTriX()-d2.GiaTriX())*(d1.GiaTriX()-d2.GiaTriX())+ (d1.GiaTriY()-d2.GiaTriY())*(d1.GiaTriY()-d2.GiaTriY()); return sqrt(kq); } 

float DoanThang::Goc() { float khoangcach=DoDai(); Diem D=vector(); //vetor cua hoanh do la i=(1,0) 

int tichvohuong=D.GiaTriX();                    // float kq=acos(tichvohuong/khoangcach); kq=kq*180/3.14; return kq; } 

Page 33: bài tập chương 1 của C++

void DoanThang::Doi(int dx,int dy) { Diem x(dx+d1.GiaTriX(),dy+d1.GiaTriY()); Diem y(dx+d2.GiaTriX(),dy+d2.GiaTriY()); d1=x; d2=y; } /////ham main//////////////// main() { Diem A(2,5), B(20,35); DoanThang AB(A,B); cout<<"doan AB \n"; AB.Xuat(); cout<<"AB sau khi tinh tuyen (5,3)"<<endl; AB.Doi(5,3); AB.Xuat(); cout<<"-----------------"<<endl; DoanThang CD; CD.Nhap(); CD.Xuat(); cout<<"Do Dai : "<<CD.DoDai()<<endl; cout<<"Goc voi truc hoanh : "<<CD.Goc()<<"DO"; getch(); }  

Bài 2PHP Code:#include"Diem.hpp" class HinhAnh{ Diem *ds; int vitri; int max; public: HinhAnh(int); HinhAnh(const HinhAnh &h); ~HinhAnh(); HinhAnh &operator=(const HinhAnh &h); void Them(); void BoCuoi(); void Bo(int vt); void Bo(Diem D); void Bo(); void Xuat(); void operator[](int); }; //////////////constructor/////////////////// HinhAnh::HinhAnh(int maxdiem=100) { ds=new Diem[100]; vitri; max=maxdiem; } HinhAnh::HinhAnh(const HinhAnh &h) { max=h.max; vitri=h.vitri; ds=new Diem[100]; for(int i=0;i<h.vitri;i++) ds[i]=h.ds[i]; } HinhAnh::~HinhAnh() { delete[] ds; } 

Page 34: bài tập chương 1 của C++

HinhAnh &HinhAnh::operator=(const HinhAnh &h) { delete[] ds; max=h.max; vitri=h.vitri; ds=new Diem[100]; for(int i=0;i<h.vitri;i++) ds[i]=h.ds[i]; return *this; } void HinhAnh::Them() { vitri++; if(vitri>=max) max*=2; ds[vitri-1].NhapDiem(); } void HinhAnh::BoCuoi() { vitri--; } void HinhAnh::Bo(int vt) { for(int i=vt-1;i<vitri-1;i++) { ds[i]=ds[i+1]; } vitri--; } void HinhAnh::Bo(Diem D) { for(int i=0;i<vitri;i++) if(ds[i].GiaTriX()==D.GiaTriX() && ds[i].GiaTriY()==D.GiaTriY()) Bo(i); } void HinhAnh::Bo()     { vitri=0; } ////////////Nhap Xuat///////////////////// void HinhAnh::Xuat() {  for(int i=0;i<vitri;i++)     { cout<<"Diem Thu "<<i+1<<endl; ds[i].InDiem(); cout<<endl; } } 

void HinhAnh::operator[](int i) { ds[i].InDiem(); 

///////////////main//////////////// main() { HinhAnh ha(200); for(int i=0;i<3;i++) { cout<<"Nhap diem thu : "<<i+1<<endl;  ha.Them(); } 

Page 35: bài tập chương 1 của C++

//ha.BoCuoi(); Diem D(1,1); ha.Bo(D); //ha.Bo(1); //ha.Bo(); ha.Xuat(); cout<<"gia tri tai vt 2 : "; ha[2]; getch(); }  

Thiên địa bất nhânVĩ vạn vật vi xô cẩu

Trả lời với trích dẫn17. 03-19-2012, 11:06 AM#15

ttjkbongdem 

Quản LýTham gia ngày

Oct 2011Đến từ

zao hoaBài gửi

489Điểm

2.725,49Cảm ơn

74Được Cảm ơn 132/74

 Buổi 6

Bài 1: Sử Dụng lại class Diem.hppPHP Code:#include"Diem.hpp" class DiemMau:public Diem{ int mau;//0:den,1 : trang,2:do,3 vang, 4 cam,5:xanh, 6 tim public: DiemMau::DiemMau() { mau=0; } DiemMau::DiemMau(int m=0,int h,int t):Diem(h,t) { mau=m; }      void NhapDiemM(); void InDiemM(); }; void DiemMau::NhapDiemM() { NhapDiem(); cout<<"nhap mau(0:den,1 : trang,2:do,3 vang, 4 cam,5:xanh, 6 tim)";cin>>mau; } void DiemMau::InDiemM() 

Page 36: bài tập chương 1 của C++

{ InDiem();cout<<endl; switch(mau) { case 0:cout<<"Mau : den"<<endl;break; case 1:cout<<"Mau : trang"<<endl;break; case 2:cout<<"Mau : do"<<endl;break; case 3:cout<<"Mau : vang"<<endl;break; case 4:cout<<"Mau : cam"<<endl;break; case 5:cout<<"Mau : xanh"<<endl;break; case 6:cout<<"Mau : tim"<<endl;break; } } /////////////main//////////////////////////// main() { DiemMau D(1,1,1); D.InDiemM(); DiemMau f=D; f.InDiemM(); getch(); }  

Bài 2: class Person +GiaoVien+HocSinh

PHP Code:#include<iostream> #include<conio.h> using namespace std; /////////class Person//////////////// class Person{ protected: char *hoten; char gioitinh[4]; unsigned int namsinh; char *noisinh; char *diachi; public: Person(); Person(char *,char*,unsigned int , char *,char *); Person(const Person &p); ~Person(); //Person &operator=(const Person &p); //khong can thiet      void Nhap(); void Xuat(); }; //////////////constructor//////// Person::Person() { hoten=new char[50]; strcpy(gioitinh,"nam"); namsinh=1990; noisinh=new char[100]; diachi=new char[100]; } Person::Person(char *ten,char *gt,unsigned int n,char *noi,char *dc) { hoten=new char[50]; strcpy(hoten,ten); strcpy(gioitinh,"nam"); namsinh=n; noisinh=new char[100]; strcpy(noisinh,noi); 

Page 37: bài tập chương 1 của C++

diachi=new char[100]; strcpy(diachi,dc); } Person::Person(const Person &p) { hoten=new char[50]; strcpy(hoten,p.hoten); strcpy(gioitinh,p.gioitinh); namsinh=p.namsinh; noisinh=new char[100]; strcpy(noisinh,p.noisinh); diachi=new char[100]; strcpy(diachi,p.diachi); } Person::~Person() { delete[] hoten; delete[] diachi; delete[] noisinh; } 

//////////////Nhap xuat////////// void Person::Nhap() {  cout<<"Nhap ten : ";fflush(stdin);gets(hoten);  cout<<"Nhap gioi tinh : ";fflush(stdin);gets(gioitinh);  cout<<"Nhap nam sinh : ";cin>>namsinh;  cout<<"Nhap noi sinh : ";fflush(stdin); gets(noisinh);  cout<<"Nhap dia chi hien tai : ";fflush(stdin);gets(diachi);    } void Person::Xuat() { cout<<"Ten : "<<hoten<<endl; cout<<"gioi tinh : "<<gioitinh<<endl; cout<<"nam sinh : "<<namsinh<<endl; cout<<"noi sinh : "<<noisinh<<endl; cout<<"dia chi : "<<diachi<<endl; } /////////class Giao Vien/////////// class GiaoVien:public Person { unsigned int namgianday; char chuyenmon[20]; public: GiaoVien():Person(){namgianday=2012;strcpy(chuyenmon,"tin");} GiaoVien(const GiaoVien &gv); void Nhap(); void Xuat(); int ThamNien(){return 2012-namgianday;} char *LayChuyenMon(){return chuyenmon;} }; ///////////////constructor///////////// GiaoVien::GiaoVien(const GiaoVien &gv):Person(gv) { namgianday=gv.namgianday; strcpy(chuyenmon,gv.chuyenmon); } 

////////////Nhap Xuat///////////////// void GiaoVien::Nhap() { Person::Nhap(); cout<<"Nhap nam bat dau day : ";cin>>namgianday; 

Page 38: bài tập chương 1 của C++

cout<<"Nhap chuyen mon : ";fflush(stdin);gets(chuyenmon); } void GiaoVien::Xuat() { Person::Xuat(); cout<<"nam gian day : "<<namgianday<<endl; cout<<"chuyen mon : "<<chuyenmon<<endl; } ///////////ham chuc nang/////////// /////////class Hoc sinh /////////// class HocSinh:public Person { float van,toan,ngoaingu; public: HocSinh(){van=toan=ngoaingu=0.0;}; HocSinh(const HocSinh& hs); void Nhap(); void Xuat(); char *XepLoai(); }; ///////////////constructor///////////// HocSinh::HocSinh(const HocSinh& hs):Person(hs) { van=hs.van; toan=hs.toan; ngoaingu=hs.ngoaingu; } ////////////Nhap Xuat///////////////// void HocSinh::Nhap() { Person::Nhap(); cout<<"Nhap diem mon toan : ";cin>>toan; cout<<"Nhap diem mon ly : ";cin>>van; cout<<"Nhap diem mon ngoai ngu : ";cin>>ngoaingu; } void HocSinh::Xuat() { Person::Xuat(); cout<<"toan : "<<toan<<endl; cout<<"van : "<<van<<endl; cout<<"ngoai ngu : "<<ngoaingu<<endl; cout<<"xep loai : "<<XepLoai(); } 

///////////ham chuc nang/////////// char *HocSinh::XepLoai() { float dtb=(toan+van+ngoaingu)/3; if(dtb>=8&&toan>=6.5&&van>=6.5&&ngoaingu>=6.5) return "Gioi"; else if(dtb>=6.5&&toan>=5&&van>=5&&ngoaingu>=5) return "Kha"; else if(dtb>=5&&toan>=3&van>=3&&ngoaingu>=3) return "TrungBinh"; else return "kem"; } /////main////////////////////// main() { int n; cout<<"Nhap so hoc sinh : ";cin>>n; HocSinh hs[100]; for(int i=0;i<n;i++){cout<<"Nhap thong tin cho hoc sinh thu "<<i+1<<endl;hs[i].Nhap();} 

Page 39: bài tập chương 1 của C++

cout<<"---------------------------------------------------------\n"; for(int i=0;i<n;i++){cout<<"thong tin cho hoc sinh thu "<<i+1<<endl;hs[i].Xuat();cout<<endl;}cout<<"---------------------------------------------------------\n"; cout<<"hoc sinh kha gioi  : "<<endl; for(int i=0;i<n;i++) { int g=strcmpi(hs[i].XepLoai(),"Gioi"); int k=strcmpi(hs[i].XepLoai(),"Kha"); if(g==0||k==0){hs[i].Xuat();cout<<endl;} } cout<<"---------------------------------------------------------\n"; int m; cout<<"Nhap so giao vien : ";cin>>m; GiaoVien gv[100]; for(int i=0;i<m;i++){cout<<"Nhap thong tin cho giao vien thu "<<i+1<<endl;gv[i].Nhap();} cout<<"---------------------------------------------------------\n"; for(int i=0;i<m;i++){cout<<"thong tin cho giao vien thu "<<i+1<<endl;gv[i].Xuat();cout<<endl;} cout<<"Giao vien co tham nien tren 10 nam va chuyen mon LY hoac toan "<<endl; for(int i=0;i<m;i++)  { int t,l; t=strcmpi(gv[i].LayChuyenMon(),"toan"); l=strcmpi(gv[i].LayChuyenMon(),"ly"); if(gv[i].ThamNien()>10&&(t==0||l==0)){cout<<"---------------\n"; gv[i].Xuat();} 

} getch(); }  

Thiên địa bất nhânVĩ vạn vật vi xô cẩu

Trả lời với trích dẫngiải 3 câu đầu nhé =.=!

câu1#include"iostream.h" #include"conio.h" #include"math.h" float tong(float x,int n) { float f; if(n>1 && x!=0) for(int i=1;i<=n;i++) f=(float)i/x+2010; else f=abs(n)+2009*x; return f; } void main() { int k;float a,t,d; 

Page 40: bài tập chương 1 của C++

cout<<"nhap so thuc a ";cin>>a; cout<<"nhap so nguyen k ";cin>>k; d=tong(a,k); t=d+log(abs(k)+fabs(a)+1); cout<<t; getch(); } câu 2#include"iostream.h" #include"conio.h" void main() { int i; float a[50],n,x; //nhâp n voi dieu kien 1<=n<=40; do { cout<<"nhap so phan tu cua mang "; cin>>n; } while(n<1 || n>40); //nhap mang ; for(i=0;i<n;i++) { cout<<"a["<<i<<"]="; cin>>a[i]; } //in mang ra man hinh; cout<<"\n mang vua nhap la: \n"; for(i=0;i<n;i++) cout<<a[i]<<" "; //in ra cac so duong trong mang va gia tri trung binh cong cua chung; int d=0; //khai bao bien dem d; float t=0,tbc; //khai bao bien tong va trung binh cong; cout<<"\n cac so duong trong mang la: \n";// \n de xuong dong; for(i=0;i<n;i++) if(a[i]>0) { cout<<a[i]<<" "; d++; t=t+a[i]; } tbc=(float)t/d; cout<<"\n gia tri trung binh cong là: "<<tbc; //phan cuoi ne; cout<<"\n nhap so x \n"; cin>>x; for(i=0;i<n;i++) break if(a[i]==x) { cout<<x<<" co trong mang \n"; d=1; ;//co x xuat hien roi thi dung vong for; } if(d!=1) { for(i=n-1;i>=0;i--) a[i+1]=a[i]; a[0]=x; cout<<"mang sau khi chen them x la \n"; for(i=0;i<=n;i++) cout<<a[i]<<" "; 

Page 41: bài tập chương 1 của C++

} getch(); } 

câu 3#include"iostream.h"#include"conio.h"#include"string.h"#include"stdio.h"int kt(char a[]){if(a[0]==' ') return 1;elsefor(int i=0;i<strlen(a);i++)if(a[i]==a[i+1] && a[i+1]==' ')return 1;return 0;}void main(){char a[100];int i,j,d=0,k=0;do{cout<<"ten no la gi ";fflush(stdin);gets(a);if(kt(a)==1) cout<<"nhap lai ten di may \n";}while(kt(a)==1);cout<<"\nten no la "<<a<<" ha ";cout<<"\nma may nho la lan sau phai viet hoa nhu the nay nha: "<<strupr(a)<<endl;cout<<"viet moi chu mot dong cho oai ;))\n";for(i=0;i<strlen(a);i++)if(a[i]!=' ')k++;else break;for(i=0;i<k;i++)cout<<a[i];for(i=k;i<strlen(a);i++)if(a[i]==' ' && a[i+1]!=' '){cout<<endl;for(j=i+1;j<strlen(a);j++)if(a[j]!=' ') cout<<a[j];else break;}getch();}nêu xem nó như 1 con trỏ chứa địa chỉ dữ liệu (gồm nhiều thông tin) chứ không phải là mảng đây là 1 bài ví dụ

: Giải bài toán sau bằng cách viết các hàm con- Nhập danh sách hành hóa (tên hàng, số lượng, đơn giá, thành tiền= đơn giá*số lượng)- In danh sách ra màn hình- Tìm thông tin về mặt hàng có số lượng nhiều nhất- Tìm thông tin về mặt hàng có đơn giá đắt nhất- Xóa bỏ các mặt hàng có số lượng bằng 0- Sắp xếp theo thứ tự tăng dần của thành tiền

#include <stdio.h>#include <conio.h>#include <windows.h>struct hanghoa{char tenhang[30];int dongia;int soluong;int thanhtien;};

Page 42: bài tập chương 1 của C++

hanghoa hv[100];void nhap(int i ){int sl,dg;printf("Nhap mat hang thu %d",i+1);printf("\nTen hang:");gets(hv[i].tenhang);printf("Don gia(DV 1000d):");scanf("%d",&dg); hv[i].dongia=dg;printf("So luong:");scanf("%d",&sl);hv[i].soluong=sl;hv[i].thanhtien=hv[i].dongia*hv[i].soluong;printf("Thanh tien la:%d000 VND\n",hv[i].thanhtien);return;}void in(int i){printf("%12c",hv[i].tenhang);printf("%9d000 VND",hv[i].dongia);printf("%9d",hv[i].soluong);printf("%13d000 VND\n",hv[i].thanhtien); }void tim(int n) {int j,tg; tg=hv[0].soluong;for(j=1;j<n;j++)if(hv[j].soluong>tg) tg=hv[j].soluong;for(j=0;j<n;j++)if(hv[j].soluong==tg){printf("\nHang hoa co so luong nhieu nhat la:\n");printf("\n Ten hang Don gia So luong Thanh tien\n");in(j);}}void gia(int n) {int j,tg; tg=hv[0].dongia;for(j=1;j<n;j++)if(hv[j].dongia>tg) tg=hv[j].dongia;for(j=0;j<n;j++)if(hv[j].dongia==tg){printf("\nHang hoa co don gia dat nhat la:\n");printf("\n Ten hang Don gia So luong Thanh tien\n");in(j);}}void sx(int n){int i,j,tg;for(i=0;i<n-1;i++)for(j=i+1;j<n;j++)if(hv[i].thanhtien>hv[j].thanhtien)i=j;for(i=0;i<n;i++)in(i);}main(){int n,i; printf("So luong hang hoa can nhap:");scanf("%d",&n);for(i=0;i<=n-1;i++) nhap(i);printf("\nDanh sach hang la:\n");printf("\n Ten hang Don gia So luong Thanh tien\n");for(i=0;i<=n-1;i++) in(i);tim(n); gia(n);printf("\nDanh sach hang co so luong khac 0 la:\n");printf("\n Ten hang Don gia So luong Thanh tien\n");for(i=0;i<=n-1;i++)if(hv[i].soluong!=0) in(i);printf("\nDanh sach hang theo thu tu tang dan cua thanh tien la:\n");printf("\n Ten hang Don gia So luong Thanh tien\n");sx(n);getch();}