Trường Đ i h c Khoa h c T  nhiên ạ ọ ệ Khoa Công ngh  thông tin ọ B  môn Tin h c c

ơ sở

TIN H C CỌ Ơ S  AỞ

ương Đ ng Bình Ph dbphuong@fit.hcmuns.edu.vn

CÁC KHÁI NI M CỆ Ậ

Ề Ơ B N V   Ả L P TRÌNH MÁY TÍNH

1

&

VC

N i dung

BB

1

Các khái niệm cơ bản

2

Các bước xây dựng chương trình

3

Biểu diễn thuật toán

4

Cài đặt thuật toán bằng NNLT

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

22

&

VC

Các khái ni m cệ

ơ b nả

BB

L p trình máy tính

ậ  Gọi tắt là lập trình (programming).  Nghệ thuật cài đặt một hoặc nhiều thuật toán trừu tượng có liên quan với nhau bằng một ngôn ngữ lập trình để tạo ra một chương trình máy tính. Thu t toán ậ

 Là tập hợp (dãy) hữu hạn các chỉ thị (hành động) được định nghĩa rõ ràng nhằm giải quyết một bài toán cụ thể nào đó.

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

33

&

VC

Các khái ni m cệ

ơ b nả

BB

Ví dụ

 Thuật toán giải PT bậc nhất: ax + b = 0

(a, b là các số thực).

Đầu vào: a, b thuộc R Đầu ra: nghiệm phương trình ax + b = 0

• Nếu a = 0

• b = 0 thì phương trình có nghiệm bất kì. • b ≠ 0 thì phương trình vô nghiệm.

• Nếu a ≠ 0

• Phương trình có nghiệm duy nhất x = -b/a

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

44

&

VC

ấ ủ Các tính ch t c a thu t toán

BB

Bao g m 5 tính ch t sau:

 Tính chính xác: quá trình tính toán hay các thao tác máy tính thực hiện là chính xác.  Tính rõ ràng: các câu lệnh minh bạch được

sắp xếp theo thứ tự nhất định.

 Tính khách quan: được viết bởi nhiều người trên máy tính nhưng kết quả phải như nhau.  Tính phổ dụng: có thể áp dụng cho một lớp các bài toán có đầu vào tương tự nhau.  Tính kết thúc: hữu hạn các bước tính toán.

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

55

&

VC

Các bước xây d ng ch

ương trình

BB

Xác định vấn đề - bài toán

Biểu diễn bằng: • Ngôn ngữ tự nhiên • Lưu đồ - Sơ đồ khối • Mã giả

Lựa chọn phương pháp giải

Xây dựng thuật toán/ thuật giải

Cài đặt chương trình

Lỗi cú pháp Lỗi ngữ nghĩa

Hiệu chỉnh chương trình

Thực hiện chương trình

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

66

&

VC

ử ụ

ữ ự

S  d ng ngôn ng  t

nhiên

BB

Đầu vào: a, b thuộc R Đầu ra: nghiệm phương trình ax + b = 0

1. Nhập 2 số thực a và b. 2. Nếu a = 0 thì

2.1. Nếu b = 0 thì

2.1.1. Phương trình vô số nghiệm 2.1.2. Kết thúc thuật toán.

2.2. Ngược lại

2.2.1. Phương trình vô nghiệm. 2.2.2. Kết thúc thuật toán.

3. Ngược lại

3.1. Phương trình có nghiệm. 3.2. Giá trị của nghiệm đó là x = -b/a 3.3. Kết thúc thuật toán.

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

77

&

VC

ử ụ S  d ng l

ưu đồ ­ sơ đồ kh iố

BB

i h n

ế

ớ ạ ố Kh i gi ị ắ đầu và k t thúc. ỉ Ch  th  b t

ấ ữ ệ

ố ậ

Kh i vào ra Nh p/Xu t d  li u.

ẽ ẽ

ọ ệ

ố ự Kh i l a ch n ề Tùy đi u ki n s  r  nhánh.

Kh i thao tác ầ Ghi thao tác c n th c hi n.

ế

Đường đi Ch  hỉ ướng thao tác ti p theo.

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

88

&

VC

ử ụ S  d ng l

ưu đồ ­ sơ đồ kh iố

BB

B t ắ đầu

ọ Đ c a,b

Đ S

a = 0

Đ S

b = 0 Tính x = ­b/a

Xu t xấ Xu tấ “VSN” Xu tấ “VN”

ế K t thúc

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

99

&

VC

ử ụ

S  d ng mã gi

BB

ụ đó (ví d  Pascal)

để

Vay mượn ngôn ng  nào  ữ bi u di n thu t toán.

Đầu vào: a, b thuộc R Đầu ra: nghiệm phương trình ax + b = 0

If a = 0 Then Begin

If b = 0 Then

Xuất “Phương trình vô số nghiệm”

Else

Xuất “Phương trình vô nghiệm”

End Else

Xuất “Phương trình có nghiệm x = -b/a”

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

1010

&

VC

Cài đặt thu t toán b ng C

BB

#include void main() {

int a, b; printf(“Nhap a, b: ”); scanf(“%d%d”, &a, &b); if (a==0) {

if (b==0)

printf(“Phuong trinh VSN”);

else

printf(“Phuong trinh VN”);

} else

printf(“x = %d”, float(-b)/a);

}

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

1111

&

VC

ế Bài t p lý thuy t

BB

80) Trình bày các tính ch t ấ 1. Thu t toán là gì? ( ộ ọ

81)

2. Các bước xây d ng ch 3. Các cách bi u di n thu t toán?

Ưu và khuy t ế

ậ quan tr ng c a m t thu t toán? ( ương trình? (81) ự ậ ễ ể ương pháp? ủ ừ đi m c a t ng ph ọ ụ 85) Cho ví d  minh h a. (

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

1212

&

VC

Bài t p th c hành

BB

ủ ăm sinh c a m t ng

ười. Tính tu i ngổ

ười

4. Nh p nậ đó. ậ

ố 5. Nh p 2 s  a và b. Tính t ng, hi u, tính và  ố đó. ủ thương c a hai s   ẩ ị

ả ả

ế

ố ượng và đơn giá. Tính  ăng ph i tr , bi

t:

ả 6. Nh p tên s n ph m, s  l ế ề ti n và thu  giá tr  gia t a. b.

tiền = số lượng * đơn giá thuế giá trị gia tăng = 10% tiền

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

1313

&

VC

Bài t p th c hành

BB

ệ ố 7. Nh p ậ đi m thi và h  s  3 môn Toán, Lý, Hóa  ộ ủ c a m t sinh viên. Tính  đi m trung bình c a  sinh viên đó.

ủ đường tròn. Tính chu vi và

8. Nh p bán kính c a

đó.

9. Nh p vào s  xe (g m 4 ch  s ) c a b n. Cho

bi

ữ ố ủ ấ ạ được m y nút?

ậ ủ ệ di n tích c a hình tròn  ố ậ ồ ủ ế ố t s  xe c a b n  ậ

10. Nh p vào 2 s  nguyên.

Tính min và max c a hai s

ố đó.

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

1414

&

VC

Bài t p 4ậ

BB

B t ắ đầu

Nh pậ năm sinh

Tính

ổ Tu i = 2007 – n ăm sinh

ấ ổ Xu t Tu i

ế K t thúc

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

1515

&

VC

Bài t p 5ậ

BB

B t ắ đầu

Nh pậ a và b

Tính ổ T ng = a + b ệ Hi u = a – b Tích = a * b Thương = a / b

Xu tấ

ổ ệ T ng, Hi u, Tích, Th ương

ế K t thúc

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

1616

&

VC

Bài t p 6ậ

BB

B t ắ đầu

Nh pậ ẩ ả Tên s n ph m S  lố ượng Đơn giá

Tính

ề Ti n = S  l ố ượng * Đơn giá

ề VAT= Ti n * 0.1

ề Xu tấ Ti n và VAT

ế K t thúc

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

1717

&

VC

Bài t p 7ậ

BB

B t ắ đầu

ệ ố ệ ố Nh pậ Đi m T, L, H ệ ố H  s  T, H  s  L, H  s  H

Tính ĐTB = (T*HsT + L*HsL + H*HsH) / (HsT +  HsL + HsH)

Xu tấ ĐTB

ế K t thúc

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

1818

&

VC

Bài t p 8ậ

BB

B t ắ đầu

Nh pậ Bán kính R

Tính PI = 3.1415 Chu vi = 2*PI*R ệ Di n tích = PI*R*R

ệ Xu tấ Chu vi và Di n tích

ế K t thúc

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

1919

&

VC

Bài t p 9ậ

BB

B t ắ đầu

Nh pậ ữ ố ồ ố s  xe N (g m 4 ch  s )

Tính

ố ứ ố ứ ố ứ ố ứ ố S  th  4: n4 = N mod 10, N = N div 10 S  th  3: n3 = N mod 10, N = N div 10 S  th  2: n2 = N mod 10, N = N div 10 S  th  1: n1 = N S  nút S = (n1 + n2+ n3 + n4) mod 10

Xu tấ ố S  nút S

ế K t thúc

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

2020

&

VC

ậ Bài t p 10

BB

B t ắ đầu

ọ Đ c a,b

Đ S

a > b

Xu tấ a max, b min Xu tấ a min, b max

ế K t thúc

Tin h c cọ

ở ơ s  A ­

Đặng Bình Phương

2121