1. Trang chủ
  2. » Luận Văn - Báo Cáo

tiểu luận kết thúc học phần môn cơ sở lập trình

25 0 0
Tài liệu được quét OCR, nội dung có thể không chính xác
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

Trang 2

LOI MO DAU

"Dau tiên, em xin gửi lời cảm ơn chân thành đến Trường Đại học Tài chính Marketing dd dua mén hoc Tin học đại cương vào trương trình giảng dạy Đặc biệt, em xin gửi lời cảm ơn sâu sắc đến giảng viên bộ môn - Cô Nguyễn Thanh Bình đã day dé, truyền đạt những kiến thức quỷ báu cho em trong suốt thời gian học tập vừa qua Trong thời gian tham gia lớp học Cơ sở lập trình của cô, em đã có thêm cho mình nhiều kiến thức bồ ích, tình thân học tập hiệu quả, nghiêm túc Đây chắc chắn sẽ là những kiến thức quỹ báu, là hành trang đề em có thê vững bước sau này

Bộ môn Cơ sở lập trình là môn học thủ vị, vô cùng bồ ích và có tính thực tễ cao Đảm bảo cung cấp đủ kiến thức, gắn liền với nhu cầu thực tiễn của sinh viên Tuy nhiên, do vốn kiến thức còn nhiều hạn chế và khả năng tiếp thu thực tỄ còn nhiều bỡ ngỡ Mặc dù chúng em đã cô gắng hết sức nhưng chắc chắn bài tiểu luận khó có thể tránh khỏi những thiếu sót và nhiều chỗ còn chưa chính xác, kính mong cô xem xét và góp ÿ đề bài tiêu luận của em được hoàn thiện hơn

Trang 3

MỤC LỤC

00006.000.758 ` 2 PHAN 1 5

1 Liệt kê các hàm có trong bài 5

2 Chức năng và nhiệm vụ của các hàm wd

0W: 1 nh ED ES Ente en neeen ees 5

b) — HồồM XUỔI In HH HH trai 6

206/12 nh aăăăăă đ 7

6z n n nh he cu 9

e) — Hàm tìm kIẾm ăà nh HH HH HH gu te 10 ƒ) — Hàm tính điểm trung bÌHh nh ra Il 8) — Hàằm sắp XẾp cà nh HH ng ra ll

h) Ham xép Lot HOC Luteo ra Đa 12

PHAN 2 ccsccsssescosscssvscseseessssecessecsavecesveccessccsssecasseessscsesseseaseceaseesseees 14

1 Liệt kê các hàm có trong bài 14

2 Chức năng và nhiệm vụ của hàm 14

JNNri T ;.nẠaa a 14 b) — HồằMm XUỔI ọ TT HH HH HH HH na 15 C) Hàm ma trận ta giác HÊH ch nh nh Hà khao 15

JAN:r nh ca 16

"NT 8 .a.ăốăăăă 17

f) Hàm tính tổng các dòng và sắp xếp các tổng theo thứ tự tăng dân IS

Trang 4

PHAN 1

1 Liệt kê các hàm có trong bai

- - Hàm nhập

- Hàm xuất - Hàm chèn - - Hàm xóa - Ham tim kiém

Trang 5

o_ Năm (kiểu số nguyên) o_ Khoa (kiểu ký tự) o_ Điểm môn | (kiêu sô thực) o_ Điêm môn 2 (kiêu sô thực) - Output: Két qua hién thi trên màn hình - Code ham:

void nhapIsv(SV& s)

{

cout << "ID: "; cin >> s.stt; cout << "Ho va ten: "; fflush(stdin); cin.ignore(); gets s(s.hten); cout << "Nhap ngay sinh: "; cin >> s.ngaysinh.ngay; fflush(stdin); cout << "Nhap thang sinh: "; cin >> s.ngaysinh.thang; cout << "Nhap nam sinh: "; cin >> s.ngaysinh.nam; cin.ignore();

Trang 6

g Manh Nha Vy mon b) Ham xudt void xuatlsv(S V& s): Hàm xuất thông tin sinh viên - Input: o_ Số thứ tự (kiểu số nguyên) o_ Họ vả tên (kiêu ký tự) o_ Ngày (kiểu số nguyên) o_ Tháng (kiểu số nguyên) o_ Năm (kiểu số nguyên) o_ Khoa (kiểu ký tự) o_ Điểm môn I (kiểu số thực) o_ Điểm môn 2 (kiểu số thực)

- Output: Xuat thong tin sinh viên ra màn hình - Code ham:

Trang 7

cout << "ID: " << s.stf;

cout << "\nHo va ten: " << s.hten;

cout << "\nNegay sinh: " << s.ngaysinh.ngay <<"/"<< sngaysinh.thang <<"/" << s.ngaysinh.nam;

Trang 8

o_ Họ và tên (kiêu ký tự)

o_ Ngày (kiểu số nguyên) o_ Tháng (kiểu số nguyên) o_ Năm (kiểu số nguyên) o_ Khoa (kiểu ký tự) o_ Điểm môn I (kiểu số thực) o_ Điểm môn 2 (kiểu số thực) - Output: Két qua hién thi trên màn hình - Code ham:

void insert(S V al], int& n)

{

SVs; int k;

cout << "\n Nhap thong tin Sinh Vien

Trang 9

} for (int i=n- 1:i>=k:i-) { afi + 1] = afi]; } a[k] = s;

n++; ,

couf << "\n THONG TIN SINH VIEN

DUOC THEM VAO nh

Trang 10

Tình 1: Nhập thông tin sinh viên cần chèn

mon I mon

THONG TTN STNH TEN CAC SINH VIEN DUOC THEM

tin sinh n thu 1

Trang 11

int k; cout << "\n Xoa sinh vien "<< endl; cout << "\nNhap ID sinh vien muon xoa: "; cin >> k; while (k <0 || k >n) { cout << "VUI LONG NHAP LAI ID MUON XOA: "; cin >> } for (int i= 0; i <n; i++) { if (a[i].stt =k) {

for (int j =i; j <n; j++)

{

aly] = aly + 1];

couf << "\n THONG TIN SINH VIEN

SÂU KHI XÓA "; ,

xuat(a, n);

Trang 12

Xoa sinh vien

Nhap ID sinh vien muon xoa: 2

THình 3: Nhập 1D sinh viên muốn xóa

TIN SINH VIEN SAU KHI XOA sinh vien thu 1 Manh Nha Vy 2003 thong tin Die Die Gioi Thong tin sinh vi Van A 5 / 2003 thong tin Dees mele

Trang 13

cout << "\n Tim sinh vien "<< endl; cout << "\nNhap ten sinh vien muon tim: "; cin >> ten; inti=0; while (i<n && _stricmp(a[i]-hten, ten) != 0) i++; if i <n) { cout << "\nCO TRONG DANH SACHin"; xuat | sv(a[i]); } else

cout << "\nKHONG CO TRONG DANH SACH";

Tim sinh vien lhap ten sinh vien muon tim: Nguyen Van B KHONG CO TRONG DANH SACH

/)_ Hàm tính điểm trung bình

void DIB(SV& s): Tính điểm trung bình - _ Input: Điểm của các sinh viên - Output: Két qua hién thị trên màn hình - Code ham:

void DTB(SV& s)

{

Trang 14

s.dtb = (s.monl + s.mon2) / 2; cout << "\nDTB: " << s.dtb;

ong Manh Nha Vy

)

he thong tin

8) Hàm sắp xếp

void tangdan(SV af], int na): Sắp xếp điểm trung bình - _ Input: Sắp điểm trung bình đã tính

- Output: Hién thi két qua trén man hinh - Code ham:

void tangdan(SV al], int n)

{

cout << "\n\n Diem trung binh tang

Trang 15

if ((a[i].dtb) > (alj].dtb)) {

s = ali]; ali] = aj]; aj] = s;

}

xuat(a, n);

1 cua sinh vie Diem trung binh tang

Thong tin sinh vier

Thong tin sinh vien thu 2

h) Ham xép loại học lực

void rating(SV& s): Xép loại học lực

Trang 16

- _ Input: Điểm trung bình đã tính - Output: Hién thi két qua trén man hinh - Code ham: void ratine(SV& s) { cout << "\nXep loai: "; if (s.dtb >= 8.0) cout << "Gioi"; else

if (s.dtb >= 6.5) cout << "Kha"; else

if (s.dtb > 5.0) cout << "Trung Binh"; else

cout << "Yeu";

Trang 17

va ten:

)

sinh: 3 Cong nị

mon mon

Trang 18

PHẢN 2 1 Liệt kê các hàm có trong bài Hàm nhập Hàm xuất Hàm xuất ma trận tam giác trên Hàm chèn Hàm xóa Hàm tính tổng dòng Hàm sắp xếp dòng

2 Chức năng và nhiệm vụ của hàm

4a) Hàm nhập

void nhapMT(int a[][cot], int n, int m): Ham nhap ma tran - Input:

o Nhap sé dong o_ Nhập số cột o_ Nhập các phần tử vào - Output: Hién thi két qua trén man hinh - Code ham:

void nhapMT(int a[][cot], int n, int m) for (int 1 = 0; 1 <n; i++)

for (int J = 0; 4 <m; j++)

cout <<" a[" <<i<<"]["<<j<<"]:";

cin >> afi] Lj]: }

Trang 19

b)_ Hàm xuất void xuatMT(int a[][cot], int n, int m); Ham xuất ma trận - Input: o Số dòng o Số cột o_ Nhập các phần tir - Output: Hién thi két qua trén man hinh - Code ham: void xuatMT(int a[][cot], int n, int m) for (int 1 = 0; 1 <n; i++) for (int J = 0; 4 <m; j++) cout << afiJ] <<" "; cout << endl;

c) Ham ma trén tam giác trên

void MTT(int a[][cot], int n, int m); Dua vé ma tran tam giác trên - Input: Phai co ma trận vuông

- Output: Hién thi két qua trén man hinh - Code ham:

void MTT(int a[][cot], int n, int m) if (n == m)

cout << "\n Day la ma tran vuong cap: " << n; for (int 1 = 0; 1 <n; i++)

for (int J = 0; 4 <m; j++)

if (j <i) a[]L] =0: cout << endl;

}

Trang 20

couf << "###**###### MA TRAN TAM GIAC TREN + #***#% %#Wn": xuatMT(a, n, m); } else cout << "\n Khong phai la ma tran vuong”; cout << "\n => Khong co ma tran tam giac tren\n"; la ma tran vuong **xx*** MA TRAN T d) Ham xóa void xoa(int a[][cot], int& n, int m): X6a | dong trén ma tran - Input: Mot ma trận - Output: Hien thi ket qua trén màn hình - Code ham: void xoa(int a[][cot], int& n, int m) int k; cout << VU fe ae fe oh ae SE fe oh ae fe 2 fe oh ae SE 3 oh ae fe oi ae ie 2 fe 2 ae ie 2 fe oi ae aie oe fe oi ae ie 2 ep tt cout << "\n VI TRI DONG CAN XOA: "; cin >> k; for (int 1 =k; 1 <= n; i++) for (int J = 0; ) <= m; j++) { afi - 1]G) = afb): }

n :

,

Trang 21

}

cout << "\n MA TRAN SAU KHI XOA: \n";

xuatMT(a, n, m);

TAM GIAC TREN *********

VI TRI DONG CAN XOA: MA TRAN SAU KHI XOA: e) Hàm chèn void chen(int a[][cot], int& n, int m): Chén them | dong vao ma tran - Input: Mot ma trận - Output: Hién thi két qua trén man hinh - Code ham: void chen(int a[][cot], int& n, int m) int k; 41 ake of ake fe afe afe af af fe afe afe ofc aft fe afe afe aft aft fe afe afe ale afe af aft afc afe afe af aft af afe afe af oft of afe af of ok ok £\ vả cout << \n"; cout << "\n VI] TRI DONG CAN CHEN: "; cin >> k; while (k <0 || k >n) cout << "VUI LONG NHAP LAI VI TRI: "; cin >> k; } for (int1=n; 1 >= k; 1 ) for (int J = 0; 4 <m; j++)

a[]II =alï - 1D): }

n+;

}

for (int J = 0; 4 < 1m; j++)

Trang 22

{ cout << "Nhap phan tu cua cot ” << J << "; ": cín >> a[k][]: } cout << "\n MA TRAN SAU KHI CHEN: \n"; xuatMT(a, n, m); MA TRAN TAM GIAC TREN rs YQ VI X ( i X

TRI DONG CAN XOA-

TRAN SAU KHI XOA:

E 2

VI TRI DONG CAN Nhap phan tu cua Nhap phan tu cua Nhap phan tu cua KHI

?)_ Hàm tính tổng các dòng và sắp xếp các tổng theo thứ tự tăng dân void tinhtong(int a[][cot], int m, int n); Tinh tong các dòng và sắp xếp theo thir ty tang dan

- Input:

o_ Là một ma trận

o_ Tính tổng các dòng trên ma trận - Output: Hién thi két qua trén man hinh - Code ham:

void tinhtong(int a[][cot], int m, int n) inti=0;

int tong = 0;

Trang 23

int aa[20]; int b = 0; if (n <m || n == m)

while (i <=n && 1 <m)

{

for (int J = 0; 4 <m; j++) tong += a[1][]]: aa[b] = tong;

bt;

tong = 0;

it;

} }

else

while (<n && 1<m)

{

for (int J = 0; 4 <m; j++) tong += a[1][]]: aa[b] = tong;

bt;

tong = 0;

it;

} }

cout << WY ale ofe ake fe afe afe af af fe afe afe afc af fe afe afe aft aft fe afe afe ale afe af aft fe afe afe af aft af afe afe afc aft afc afe afe oft of ak ae tt

cout << "\nTONG CAC DONG LA: "; for (inti =0;1<b; i++)

{

Trang 24

aalI] = aall]; aal1] = phu;

} } } cout << 5 cout << 5 for (int 1 = 0; 1 <b; i++) { cout << aa[i] <<"; dong: 3 cot: 3 ư w o> Sh i lt) i}

Day la ma tran vuong cap: 3

xxxxxxx*** MA TRAN TAM GIAC TREN ********%

e 7 2 e @ 6

VI TRI DONG CAN XOA: 2 MA TRAN SAU KHI XOA: 5

VI TRI DONG CAN CHEN: Nhap phan tu cua cot @:

Nhap phan tu cua cot 2: MA TRAN SAU KHI CHEN:

St ttet et et eset ses CS SSeS + See te Ste SSeS eS te ONG CAC DONG LA: 12 6 15

Str tet et ete ser +e +o + oC Se SPS sete SSeS eS eS eS tS ONG CAC DONG SAU KHI SAP XEP LA: 6 12 15

Trang 25

TÀI LIỆU THAM KHẢO

Phạm Văn Ất, Ngôn ngữ lập trình C++, NXB Khoa học và kỹ thuật Stroustrup, The C++ Programming Language, 4° Fidition

._ Trần Đan Thư, Lập trình C (tập L và tập 2) NXB đại học quốc gia thành phố Hỗ Chí Minh

Joel Adam & Larry Nyhof, C++ An Introdution to Computing, 3°-Edition

Ngày đăng: 02/07/2024, 16:23

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN