You are on page 1of 10

NHẬP MÔN LẬP TRÌNH

Lớp: INPR130285_08CLC

Giảng viên: Huỳnh Xuân Phụng

BÀI TẬP VỀ NHÀ SỐ 2

Sinh viên trình bày: Bùi Hà Nhi MSSV: 18110168

NMLT_C01_ CÁC KHÁI NIỆM CƠ BẢN VỀ LẬP TRÌNH

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?

- 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 đó.

- Các tính chất quan trọng của một thuật toán:

+ Tính chính xác

+ Tính rõ ràng

+ Tính khách quan

+ Tính phổ dụng

+ Tính kết thúc

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

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

(1) Work an instance yourself

(2) Write down exactly what you just did

(3) Generalize your steps from (2)

(4) Test your steps

(5) Translate to Code


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.
http://www4.hcmut.edu.vn/~huynhqlinh/TinhocDC/THDC13/Bai03_2.htm

- Các cách biểu diễn thuật toán: sử dụng ngôn ngữ tự nhiên, sử dụng lưu đồ - sơ đồ
khối, sử dụng mã giả.

- Ưu, khuyết và ví dụ cho từng phương pháp:

Phương Sử dụng ngôn ngữ tự Sử dụng lưu đồ - sơ đồ Sử dụng mã giả


pháp nhiên khối
Ưu Không yêu cầu người Giúp người đọc theo dõi Dùng mã giả vừa tận
điểm viết hay người đọc được sự phân cấp các dụng được các khái
thuật toán phải nắm trường hợp và quá trình niệm trong ngôn ngữ
các quy tắc vì nó xử lý của thuật toán lập trình, vừa giúp
không có quy tắc cố người cài đặt dễ dàng
định nắm bắt nội dung
thuật toán
Khuyết Dài dòng, không thể Cồng kềnh, để mô tả Phải vay mượn các cú
điểm hiện rõ cấu trúc của thuật toán nhỏ ta phải pháp của một ngôn
thuật toán, đôi lúc dung một không gian ngữ lập trình nào đó
gây hiểu lầm hoặc lớn. Lưu đồ chỉ phân để thể hiện thuật toán
khó hiểu cho người biệt 2 thao tác là rẽ khiến mã giả sẽ bị
đọc nhánh và xử lý. Mà phụ thuộc vào ngôn
trong thực tế, các thuật ngữ lập trình đó
toán còn có thao tác lặp.
Ví dụ minh họa: Giải phương trình bậc nhất: ax + b = 0

+ Sử dụng ngôn ngữ tự nhiên:

Đầu vào: a, b thuộc R

Đầu ra: nghiệm phương trình ax + b = 0

Nhập 2 số thực a và b

Nếu a = 0 thì:

Nếu b = 0 thì:

Phương trình vô số nghiệm


Kết thúc thuật toán

Ngược lại:

Phương trình vô nghiệm

Kết thúc thuật toán

Ngược lại:

Phương trình có nghiệm

Gía trị của nghiệm đó là x = -b/a

Kết thúc thuật toán

+ Sử dụng lưu đồ - sơ đồ khối:

+ Sử dụng mã giả: vay mượn ngôn ngữ Pascal để biểu diễ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”

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 đó.

- Sử dụng ngôn ngữ tự nhiên:

Đầu vào: năm sinh 1 người ( số thuộc N*: số tự nhiên)

Đầu ra: số tuổi người đó

Nhập số thuộc N*

Nhập năm hiện tại

Tuổi = năm hiện tại – năm sinh

Kết thúc thuật toán

- Sử dụng lưu đồ - sơ đồ khối:

- Sử dụng mã giả:
#include <iostream>
using namespace std;

int main()
{
int ns, tuoi;
cout << "Nhap nam sinh: \n";
cin >> ns;
tuoi = 2019 - ns;
cout << "Tuoi: \n" << tuoi;
return 0;
}
5. Nhập 2 số a và b. Tính tổng, hiệu, tích và thương của hai số đó.

- Sử dụng ngôn ngữ tự nhiên:

Đầu vào: a, b thuộc R

Đầu ra: tổng, hiệu, tích, thương của a,b

Nhập 2 số a, b thuộc R

Tổng = a + b

Hiệu = a – b hoặc Hiệu = b – a

Tích = a*b

Thương = a/b với b khác 0 hoặc Thương = b/a với a khác 0

Kết thúc thuật toán

- Sử dụng lưu đồ - sơ đồ khối:

- Sử dụng mã giả:
#include <iostream>
using namespace std;

int main()
{
int a, b, tong, hieu, tich, thuong;
cout << "Nhap 2 so a,b: \n";
cin >> a >> b;
tong = a + b;
hieu = a - b;
tich = a * b;
if (b == 0)
cout << "Khong tinh duoc\n";
else
thuong = a / b;
cout << "Tong = " << tong;
cout << "Hieu = " << hieu;
cout << "Tich = " << tich;
if (b == 0)
cout << "Khong tinh duoc\n";
else
thuong = a / b;
cout << "Thuong = " << thuong;
return 0;
}

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

- Sử dụng ngôn ngữ tự nhiên:

Đầu vào: tên sp, số lượng, đơn giá

Đầu ra: tiền và thuế giá trị gia tăng phải trả

Nhập vào tên sp, số lượng, đơn giá

Nếu số lượng < 1 thì:

Tiền = 0

Thuế giá trị gia tăng = 0

Kết thúc thuật toán

Ngược lại:

Tiền = số lượng * đơn giá

Thuế = 10*tiền/100

Kết thúc thuật toán

- Sử dụng lưu đồ - sơ đồ khối:

- Sử dụng mã giả:
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 đó.

- Sử dụng ngôn ngữ tự nhiên:

Đầu vào: điểm thi và hệ số 3 môn Toán, Lý Hóa

Đầu ra: Điểm trung bình của sinh viên đó

Nhập điểm thi và hệ số 3 môn Toán, Lý, Hóa

- Sử dụng lưu đồ - sơ đồ khối:

- Sử dụng mã giả:

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 đó.

- Sử dụng ngôn ngữ tự nhiên:

Đầu vào: bán kính đường tròn R thuộc R

Đầu ra: chu vi, diện tích hình tròn đó

Nhập R thuộc R

Nếu R ≤ 0 thì:

Đây không phải hình tròn

Kết thúc thuật toán

Ngược lại: R > 0 thì:

Đây là hình tròn

Gía trị chu vi là CV = 2*pi*R

Gía trị diện tích là S=pi*R*R


Kết thúc thuật toán

- Sử dụng lưu đồ - sơ đồ khối:

- Sử dụng mã giả:

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?

P.S: Em không có xe, nhưng 4 số cuối dt em là: 9937

- Sử dụng ngôn ngữ tự nhiên:

Đầu vào: số xe gồm 4 chữ số (9937)

Đầu ra: số nút

Nhập số xe

Nếu số xe < 1000 và > 9999 thì:

Không tính được

Thuật toán kết thúc

Ngược lại: (số xe = 9937)

Số xe % 1000 = a , dư div1

Div1 % 100 = b, dư div2

Div2 % 10 = c, dư div3

Nút = a + b + c + div3

Nếu nút < 9 thì:

Nút = nút

Kết thúc thuật toán

Ngược lại: nút > 9: (9999 tối đa nút = 36)


Nút % 10 = d, dư div4

Nút = d + div4

Kết thúc thuật toán

- Sử dụng lưu đồ - sơ đồ khối:

- Sử dụng mã giả:

10. Nhập vào 2 số nguyên. Tính min và max của hai số đó.

- Sử dụng ngôn ngữ tự nhiên:

Đầu vào: a, b thuộc Z

Đầu ra: min, max

Nhập 2 số nguyên a,b

Nếu a>b thì:

Max = a

Min = b

Kết thúc thuật toán

Ngược lại:

Max = b

Min = a

Kết thúc thuật toán

- Sử dụng lưu đồ - sơ đồ khối:

- Sử dụng mã giả:

You might also like