Nhập môn lập trình - Các khái niệm cơ bản về lập trình

1. Thuật toán là gì? Trình bày các tính chất

quan trọng của một thuật toán?

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

3. Các cách biểu diễn thuật toán? Ưu và

khuyết điểm của từng phương pháp?

Cho ví dụminh họa.

pdf9 trang | Chuyên mục: C/C++ | Chia sẻ: dkS00TYs | Lượt xem: 2448 | Lượt tải: 3download
Tóm tắt nội dung Nhập môn lập trình - Các khái niệm cơ bản về lập trình, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
Phạm Đình Sắc
sacvn@yahoo.com
Trường Cao đẳng Kỹ thuật Công nghệ Đồng Nai
Khoa Điện tử - Công nghệ thông tin
1
NHẬP MÔN LẬP TRÌNH
CÁC KHÁI NIỆM CƠ BẢN 
VỀ LẬP TRÌNH
PP
ĐĐ
SS
2
Nội dung
NMLT - Các khái niệm cơ bản về lập trình
Các khái niệm cơ bản1
Các bước xây dựng chương trình2
Biểu diễn thuật toán3
Cài đặt thuật toán bằng NNLT4
VCVC
&&
BBBB
3
Các khái niệm cơ bản
™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 đó.
NMLT - Các khái niệm cơ bản về lập trình
VCVC
&&
BBBB
4
Các khái niệm cơ bản
™Ví dụ
ƒ Thuật toán giải PT bậc nhất: ax + b = 0
(a, b là các số thực).
NMLT - Các khái niệm cơ bản về lập trình
• 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
Đầu vào: a, b thuộc R
Đầu ra: nghiệm phương trình ax + b = 0
VCVC
&&
BBBB
5
Các tính chất của thuật toán
™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
PP
ĐĐ
SS
6
Các bước xây dựng chương trình
NMLT - Các khái niệm cơ bản về lập trình
Xác định vấn đề
- bài toán
Lựa chọn
phương pháp giải
Cài đặt
chương trình
Hiệu chỉnh
chương trình
Thực hiện
chương trình
Lỗi cú pháp
Lỗi ngữ nghĩa
Biểu diễn bằng:
• Ngôn ngữ tự nhiên
• Lưu đồ - Sơ đồ khối
• Mã giả
Xây dựng
thuật toán/ thuật giải
PP
ĐĐ
SS
7
Sử dụng ngôn ngữ tự nhiên
NMLT - Các khái niệm cơ bản về lập trình
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.
Đầu vào: a, b thuộc R
Đầu ra: nghiệm phương trình ax + b = 0
PP
ĐĐ
SS
8
Sử dụng lưu đồ - sơ đồ khối
NMLT - Các khái niệm cơ bản về lập trình
Khối giới hạn
Chỉ thị bắt đầu và kết thúc.
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.
PP
ĐĐ
SS
9
Giải thuật và lưu đồ pt: ax+b=0
Đầu vào: a,b
Đầu ra: x
B1: Yêu cầu nhập a,b
B2: Kiểm tra:
Nếu a=0 và b=0 => pt VSN
Nếu a=0 và b0 => pt VN
Nếu a0 => x=-b/a
B3: Xuất kết quả
Text
Begin
Nhập a,b
a =0 và b=0
a=0 và b0
a 0
End
VSN
VN
Nghiệm nè x=…X=-b/a
PP
ĐĐ
SS
10
Giải thuật và lưu đồ pt: ax+b=0 (CT)
Đầu vào: a,b
Đầu ra: x
B1: Yêu cầu nhập a,b
B2: Kiểm tra:
Nếu a=0
Nếu b=0 => pt VSN
Ngược lại(b0) =>ptVN
Ngược lại(a0 => x=-b/a
B3: Xuất kết quả
Begin
Nhập a,b
a=0 b=0
End
VSN
VN
Nghiệm nè x=…
X=-b/a
PP
ĐĐ
SS
11
Giải thuật pt: ax2+bx+c=0
Đầu vào: a,b,c
Đầu ra: x1,x2
B1: Yêu cầu nhập a,bc
B2: Kiểm tra:
Nếu a=0
Nếu b=0
Nếu c=0 => pt VSN
NL(c0) => pt VN
NL(b0) =>x=-c/b
NL(a0)
Tính d=b2- 4*a*c
Nếu d=0 => x1=x2=-b/(2*a)
NL(d0)
Nếu d pt VN
NL(d>0) => 
x1=(-b+sqrt(d))/(2*a)
x2=(-b-sqrt(d))/(2*a) B3: Xuất kết quả
PP
ĐĐ
SS
12
Lưu đồ pt: ax2+bx+c=0
Begin Nhập a,b,c
a=0
b=0
End
VSN
VN
Nghiệm nè …
X=-c/b
c=0
d=b2- 4*a*c
d=0 X1=x2=…
d<0
X1=…
x2=…
VN
PP
ĐĐ
SS
13
Sử dụng lưu đồ - sơ đồ khối
NMLT - Các khái niệm cơ bản về lập trình
Bắt đầu
Đọc a,b
a = 0
Tính
x = -b/a
Xuất
“VN”
b = 0
Xuất
“VSN”
Kết thúc
Xuất x
SĐ
Đ S
VCVC
&&
BBBB
14
Sử dụng mã giả
™Vay mượn ngôn ngữ nào đó (ví dụ Pascal) để
biểu diễn thuật toán.
NMLT - Các khái niệm cơ bản về lập trình
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”
Đầu vào: a, b thuộc R
Đầu ra: nghiệm phương trình ax + b = 0
PP
ĐĐ
SS
15
Cài đặt thuật toán bằng C/C++
NMLT - Các khái niệm cơ bản về lập trình
#include 
#include 
void main()
{
int a, b;
printf(“Nhap a, b: ”);
scanf(“%d%d”, &a, &b);
if (a == 0)
if (b == 0)
printf(“Phương trình VSN”);
else
printf(“Phương trình VN”);
else
printf(“x = %.2f”, -float(b)/a);
}
VCVC
&&
BBBB
16
Bài tập lý thuyết
1. Thuật toán là gì? Trình bày các tính chất 
quan trọng của một thuật toán?
2. Các bước xây dựng chương trình?
3. Các cách biểu diễn thuật toán? Ưu và
khuyết điểm của từng phương pháp?
Cho ví dụ minh họa.
NMLT - Các khái niệm cơ bản về lập trình
VCVC
&&
BBBB
17
Bài tập thực hành
4. Nhập năm sinh của một người. Tính tuổi người 
đó.
5. Nhập 2 số a và b. Tính tổng, hiệu, tính và
thương của hai số đó.
6. Nhập tên sản phẩm, số lượng và đơn giá. Tính 
tiền và thuế giá trị gia tăng phải trả, biết:
a. tiền = số lượng * đơn giá
b. thuế giá trị gia tăng = 10% tiền
NMLT - Các khái niệm cơ bản về lập trình
VCVC
&&
BBBB
18
Bài tập thực hành
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 đó.
8. Nhập bán kính của đường tròn. Tính chu vi và
diện tích của hình tròn đó.
9. Nhập vào số xe (gồm 4 chữ số) của bạn. Cho 
biết số xe của bạn được mấy nút?
10.Nhập vào 2 số nguyên.
Tính min và max của hai số đó.
NMLT - Các khái niệm cơ bản về lập trình

File đính kèm:

  • pdfC01_KhaiNiemCoban.pdf
Tài liệu liên quan