You are on page 1of 13

B GIO DC V O TO

TRNG I HC S PHM TP,HCM


KHOA TON TIN HC
http://math.hcmup.edu.vn

LP TRNH HNG I TNG

Khoa Ton Tin hc

Bi tp thc hnh Hng i tng

Mc lc
1.

Phn 1: Struct .............................................................................................................. 3

1.1.
Qun l hc sinh ................................................................................................... 3
1.2.
Qun l hc sinh - lp........................................................................................... 3
1.3.
Qun l hc sinh - lp - khi lp.......................................................................... 4
2. Phn 2: Lm quen vi lp trnh hng i tng ................................................... 5
2.1.
Qun l hc sinh ................................................................................................... 5
2.2.
Qun l hc sinh - lp........................................................................................... 6
2.3.
Qun l hc sinh - lp - khi lp.......................................................................... 7
2.4.
Thit k v ci t lp Phn s............................................................................. 7
2.5.
Thit k v ci t lp Ngy ................................................................................. 9
3. Phn 3: Lm quen vi Contructor, Destructor, Operator ...................................... 9
3.1.
Lp Phn s .......................................................................................................... 9
3.2.
Lp Ngy ............................................................................................................. 10
4. Phn 4: Lm quen vi k tha ................................................................................. 10
4.1.
Qun l Lng nhn vin .............................................................................. 10
4.2.
Qun l cc i tng hnh hc ......................................................................... 11
5. Phn 5: Bi tp tng hp .......................................................................................... 11
5.1.
5.2.
5.3.
5.4.
5.5.

Lp Phn s ........................................................................................................ 11
Tr chi Caro ...................................................................................................... 12
Tr chi Minesweeper ........................................................................................ 12
Tr chi C tng .............................................................................................. 13
Tr chi TETRIS ................................................................................................ 13

Ths Trn Ngc Bo

Trang 2/13

Khoa Ton Tin hc

Bi tp thc hnh Hng i tng

1. Phn 1: Struct
1.1. Qun l hc sinh
1.1.1.

bi

Vit chng trnh nhp thng tin h tn hc sinh, im thi 2 mn Vn, Ton.
Tnh im trung bnh, in kt qu ra mn hnh theo format sau
CHUONG TRINH MINH HOA 1
Nhap ho ten hoc sinh: Nguyen Van A
Toan: 8
Van: 7
Ket qua
Ho ten
Van
Toan
Trung binh
Nguyen Van A
7.0
8.0
7.5
1.1.2.

Hng dn gi

T chc cu trc d liu c lu tr nh sau


Struct HocSinh
{
char HoTen[30];
float Van, Toan, DTB;
}
a. Vit hm nhp thng tin hc sinh theo prototype sau
void Nhap(HocSinh &hs);
b. Vit hm xut thng tin hc sinh theo prototype sau
void Xuat(HocSinh hs);
c. Vit hm tnh im trung bnh hc sinh theo prototype sau
void TinhTB(HocSinh &hs);
d. Vit chng trnh nhp thng tin hc sinh, tnh im trung bnh v in kt qu hc
sinh ra mn hnh.

1.2. Qun l hc sinh - lp


1.2.1.

bi

Vit chng trnh nhp thng tin ca mt lp hc gm N hc sinh (N<=50), vi


mi hc sinh nhp h tn hc sinh, im thi 2 mn Vn, Ton.
Tnh im trung bnh ca mi hc sinh v in kt qu ra mn hnh theo format sau
CHUONG TRINH MINH HOA 2
Nhap thong tin hoc sinh thu 1:
Ho ten hoc sinh: Nguyen Van A
Toan: 8

Ths Trn Ngc Bo

Trang 3/13

Khoa Ton Tin hc


Van: 7
Nhap thong tin hoc sinh thu 2:
Ho ten hoc sinh: Nguyen Van B
Toan: 8.5
Van: 7.5
KET QUA
Ho ten
Van
Toan
Nguyen Van A
7.0
8.0
Nguyen Van B
7.5
8.5
1.2.2.

Bi tp thc hnh Hng i tng

Trung binh
7.5
8.0

Hng dn ci t

T chc cu trc d liu c lu tr nh sau


Struct HocSinh
{
char HoTen[30];
float Van, Toan, DTB;
}
Struct LopHoc
{
char TenLop[30];
HocSinh hs[50];
int SiSo;
}
B sung thm bi tp Qun l hc sinh cc hm sau
a. Vit hm nhp thng tin lp theo prototype sau
void Nhap(LopHoc &l);
b. Vit hm xut thng tin lp hc theo prototype sau
void Xuat(LopHoc l);
c. Vit hm tnh im trung bnh hc sinh ca mt lp hc theo prototype sau
void TinhTB(LopHoc &l);
d. Vit chng trnh nhp thng tin hc sinh, tnh im trung bnh v in kt qu hc
sinh ca mt lp hc ra mn hnh.

1.3. Qun l hc sinh - lp - khi lp


1.3.1.

bi

Vit chng trnh nhp thng tin ca mt khi gm c N (N<50) lp hc, mi lp


hc gm N hc sinh (N<=50), vi mi hc sinh nhp h tn hc sinh, im thi 2 mn
Vn, Ton.
Tnh im trung bnh ca mi hc sinh v in kt qu ra mn hnh
1.3.2.

Hng dn gi

B sung thm bi tp Qun l hc sinh - lp cu trc Khoi v cc hm sau

Ths Trn Ngc Bo

Trang 4/13

Khoa Ton Tin hc

Bi tp thc hnh Hng i tng

Struct Khoi
{
char TenKhoi[30];
LopHoc
lh[50];
int SiSo;
}
a. Vit hm nhp thng tin mt khi theo prototype sau
void Nhap(Khoi &k);
b. Vit hm xut thng tin mt khi theo prototype sau
void Xuat(Khoi k);
c. Vit hm tnh im trung bnh hc sinh ca mt khi theo prototype sau
void TinhTB(Khoi &k);
d. Vit chng trnh nhp thng tin hc sinh, tnh im trung bnh v in kt qu hc
sinh ca mt khi ra mn hnh.

2. Phn 2: Lm quen vi lp trnh hng i tng


2.1. Qun l hc sinh
2.1.1.

bi

Vit chng trnh nhp thng tin h tn hc sinh, im thi 2 mn Vn, Ton.
Tnh im trung bnh, in kt qu ra mn hnh theo format sau
CHUONG TRINH MINH HOA 1
Nhap ho ten hoc sinh: Nguyen Van A
Toan: 8
Van: 7
Ket qua
Ho ten
Van
Toan
Trung binh
Nguyen Van A
7.0
8.0
7.5
2.1.2.

Hng dn gi

T chc class HocSinh


class HocSinh
{
Protected:
char HoTen[30];
float Van, Toan, DTB;
public:
void Nhap();
void Xuat();
void TinhTB();
}

Ths Trn Ngc Bo

Trang 5/13

Khoa Ton Tin hc


a.
b.
c.
d.

Bi tp thc hnh Hng i tng

Vit hm nhp thng tin hc sinh trong class HocSinh


Vit hm xut thng tin hc sinh trong class HocSinh
Vit hm tnh im trung bnh hc sinh trong class HocSinh
Vit chng trnh s dng class HocSinh nhp thng tin hc sinh, tnh im
trung bnh v in kt qu hc sinh ra mn hnh.

2.2. Qun l hc sinh - lp


2.2.1.

bi

Vit chng trnh nhp thng tin ca mt lp hc gm N hc sinh (N<=50), vi


mi hc sinh nhp h tn hc sinh, im thi 2 mn Vn, Ton.
Tnh im trung bnh ca mi hc sinh v in kt qu ra mn hnh theo format sau
CHUONG TRINH MINH HOA 2
Nhap thong tin hoc sinh thu 1:
Ho ten hoc sinh: Nguyen Van A
Toan: 8
Van: 7
Nhap thong tin hoc sinh thu 2:
Ho ten hoc sinh: Nguyen Van B
Toan: 8.5
Van: 7.5
KET QUA
Ho ten
Van
Toan
Nguyen Van A
7.0
8.0
Nguyen Van B
7.5
8.5
2.2.2.

Trung binh
7.5
8.0

Hng dn ci t

B sung thm bi tp Qun l hc sinh class LopHoc nh sau:


class LopHoc
{
Protected:
char TenLop[30];
HocSinh hs[50];
int SiSo;
public:
void Nhap();
void Xuat();
void TinhTB();
}
B sung thm bi tp Qun l hc sinh cc hm sau
a. Vit hm nhp thng tin hc sinh ca mt lp lp trong class LopHoc
b. Vit hm xut thng tin hc sinh ca mt lp lp trong class LopHoc
c. Vit hm tnh im trung bnh hc sinh mt lp lp trong class LopHoc

Ths Trn Ngc Bo

Trang 6/13

Khoa Ton Tin hc

Bi tp thc hnh Hng i tng

d. Vit chng trnh s dng class LopHoc nhp thng tin hc sinh, tnh im
trung bnh v in kt qu hc sinh ca mt lp hc ra mn hnh.

2.3. Qun l hc sinh - lp - khi lp


2.3.1.

bi

Vit chng trnh nhp thng tin ca mt khi gm c N (N<50) lp hc, mi lp


hc gm N hc sinh (N<=50), vi mi hc sinh nhp h tn hc sinh, im thi 2 mn
Vn, Ton.
Tnh im trung bnh ca mi hc sinh v in kt qu ra mn hnh
2.3.2.

Hng dn gi

B sung thm bi tp Qun l hc sinh - lp class Khoi v cc hm sau


class Khoi
{
Protected:
char TenKhoi[30];
LopHoc
lh[50];
int SiSo;
public:
void Nhap();
void Xuat();
void TinhTB();
}
a.
b.
c.
d.

Vit hm nhp thng tin hc sinh ca mt khi trong class Khoi


Vit hm xut thng tin hc sinh ca mt khi trong class Khoi
Vit hm tnh im trung bnh hc sinh ca mt khi trong class Khoi
Vit chng trnh s dng class Khoi nhp thng tin hc sinh, tnh im trung
bnh v in kt qu hc sinh ca mt khi ra mn hnh.

2.4. Thit k v ci t lp Phn s


2.4.1.

bi

Thit k v ci t lp phn s
Vit chng trnh minh ha tng bc bn php ton cng, tr, nhn, chia 2 phn s.
2.4.2.

Hng dn gi

Thit k v ci t lp phn s vi cc thnh phn nh sau:


a. Thnh phn thuc tnh
- T s: s nguyn
- Mu s: s nguyn
b. Thnh phn x l
- Nhm khi to
Nhp t bn phm

Ths Trn Ngc Bo

Trang 7/13

Khoa Ton Tin hc

2.4.3.

Bi tp thc hnh Hng i tng

Khi to t danh sch tham s t s, mu s


Khi to t i tng thuc lp phn s
Nhm cung cp thng tin
c gi tr t s
c gi tr mu s
Xut phn s ra mn hnh
Nhm cp nht
Cp nht t s
Cp nht mu s
Rt gn phn s
Nhm x l tnh ton
Cng hai phn s
Tr hai phn s
Nhn hai phn s
Chia hai phn s
T chc project

a. Lu tr lp phn s
- Tp tin header: Phanso.h
- Tp tin source: Phanso.cpp
b. Tp tin cha hm main: psmain.cpp
c. Tp tin h tr khc:
- Tp tin uscln.h: cha khai bo prototype cc hm c chung ln nht, bi
chung nh nht,
- Tp tin ucsln.cpp: chc ci t cc hm khai bo trong tp tin uscln.h
d. Tp tin project: PS.prj cha cc tp tin
- Tp tin source ca lp phn s: Phanso.cpp
- Tp tin cha hm main: psmain.cpp
- Tp tin ucsln.cpp

2.5. Thit k v ci t lp mng 1 chiu


2.5.1.

bi

Thit k v ci t lp mng mt chiu c n phn t (s lng phn t c cp pht


ng), mi phn t l mt s nguyn
Vit chng trnh minh ha cc thao tc c bn trong mng.
- Nhp mng
- Pht sinh mng
- c t file
- Xut mng
- Ghi ra file
- Tm kim mt phn t trong mng
Tm tun t
Tm nh phn
- Sp xp cc phn t trong mng theo th t tng/gim

Ths Trn Ngc Bo

Trang 8/13

Khoa Ton Tin hc

2.5.2.

Bi tp thc hnh Hng i tng

Sp xp i ch trc tip
Sp xp chn trc tip
Sp xp chn trc tip
.
Thm/chn phn t
Xa phn t trong mng
Kim tra mng con
Ni mng
Tnh ton
Tng cc phn t
Tng cc phn t chn
Tng cc phn t l
Tng cc phn t nguyn t
.
Hng dn gi

2.6. Thit k v ci t lp Ngy


2.6.1.

bi

Thit k v ci t lp Ngy
Vit chng trnh minh ha hin th lch ca mt thng, lch ca 1 nm.
2.6.2.

Hng dn gi

3. Phn 3: Lm quen vi Contructor, Destructor, Operator


3.1. Lp Phn s
3.1.1.

bi

B sung cc x l thuc loi Constructor, Destructor, Operator


3.1.2.

Hng dn gi

3.2. Lp mng mt chiu


3.2.1.

bi

B sung cc x l thuc loi Constructor, Destructor, Constructor copy, Operator


3.2.2.

Hng dn gi

Ths Trn Ngc Bo

Trang 9/13

Khoa Ton Tin hc

Bi tp thc hnh Hng i tng

3.3. Lp Ngy
3.3.1.

bi

B sung cc x l thuc loi Constructor, Destructor, Operator


3.3.2.

Hng dn gi

4. Phn 4: Lm quen vi k tha


4.1. Qun l Lng nhn vin
4.1.1.

bi

Mt cng ty cn tin hc ha cng vic tnh tin thng trong nm cho nhn vin trong
ton cng ty. Ni dung yu cu nh sau:
Cn lu danh sch cc nhn vin (ti a 200 nhn vin), trong mi nhn vin c t
nht cc thng tin:
- M s nhn vin
- H tn
- Mc lng
- Loi nhn vin: nhn vin vn phng, nhn vin bn hng, nhn vin sn xut.
Tin thng cho mi nhn vin trong cng ty c tnh theo quy tc sau:
- i vi nhn vin vn phng
o Nu thi gian cng tc < 6 thng th
Tin thng = 100000
o Nu thi gian cng tc 6
Tin thng = 200000 + Mc lng *10% * thi gian cng tc/6
Trong thi gian cng tc (c tnh theo n v thng) l s thng m
nhn vin lm vic ti cng ty
- i vi nhn vin bn hng
o Tin thng = 150000 * h s thng
Mi nhn vin bn hng c mt h s thng ring.
- i vi nhn vin sn xut
o Tin thng = 20000 * tng s sn phm tnh t u nm
Vi nhng m t trn, yu cu:
a) Khai bo cc lp d liu cn cho bi ton, biu din cy k tha (nu c).
b) Trong mi lp cu a),
a. Khai bo v ci t phng phc tnh tin thng cho mi nhn vin.
b. Khai bo v ci t phng thc hin th thng tin ca mi nhn vin
c) Ci t mt hm hin th danh sch nhn vin vi prototype nh sau:
void HienThi(NHANVIEN *pnv[], int n) ;
Trong :
- pnv l mt mng cc con tr m mi phn t lu a ch ca mt i tng
thuc 1 trong 3 loi nhn vin k trn.
- n l tng s nhn vin.

Ths Trn Ngc Bo

Trang 10/13

Khoa Ton Tin hc


4.1.2.

Bi tp thc hnh Hng i tng

Hng dn gi

4.2. Qun l cc i tng hnh hc


4.2.1.

bi

Xy dng (v) cy k tha biu din cc lp Hnh ch nht, ellipse, hnh trn, hnh tr,
hnh cu.
a. nh ngha cc lp bao gm cc thnh sau:
- Thuc tnh
- 1 constructor
- Hm tnh din tch
b. Vit hm tnh tng din tch vi tham s l mng cc hnh mc tng qut, cho
php tnh tng din tch hnh ch nht, ellipse, hnh trn, hnh tr, hnh cu.
4.2.2.

Hng dn gi

5. Phn 5: Bi tp tng hp
5.1. Lp Phn s
5.1.1.

bi

Xy dng chng trnh minh ha cc php ton cng, tr, nhn, chia trn phn s

5.1.2.

Hng dn gi

Ths Trn Ngc Bo

Trang 11/13

Khoa Ton Tin hc

Bi tp thc hnh Hng i tng

5.2. Tr chi Caro


5.2.1.

bi

Vit chng trnh tr chi Caro cho php 2 ngi cng chi, my tnh ng vai tr
trng ti

5.2.2.

Hng dn gi

5.3. Tr chi Minesweeper


5.3.1.

bi

Vit chng trnh tr chi g mn tng t tr chi g mn trong Windows.

Ths Trn Ngc Bo

Trang 12/13

Khoa Ton Tin hc


5.3.2.

Bi tp thc hnh Hng i tng

Hng dn gi

5.4. Tr chi C tng


5.4.1.

bi

Vit chng trnh tr chi C tng cho php 2 ngi cng chi, my tnh ng vai
tr trng ti
5.4.2.

Hng dn gi

5.5. Tr chi TETRIS


5.5.1.

bi

Vit chng trnh tr chi TETRIS cho php ngi chi chn nhiu mc khc
nhau
5.5.2.

Hng dn gi

Ths Trn Ngc Bo

Trang 13/13

You might also like