Bi tập thực hnh Môn Kỹ thuật lập trình
Biên soạn: Nguyễn Mạnh Cờng Trang: 1
Một số Bi tập thực hnh
môn kỹ thuật lập trình
---------------
Chơng I: Biến biểu thức các lệnh nhập xuất
1. Nhập hai số nguyên, tính tổng, hiệu, tích, thơng, đồng d.
2. Nhập một số nguyên, in ra mn hình cách đọc số nguyên đó (VD: số 1252 đọc
l: một ngn hai trăm năm chục hai đơn vị).
3. Viết chơng trình tính giá trị biểu thức:
F(x) = (x
2
+e
x
+sin
2
(x))/sqrt(x
2
+1)
Chơng II: các cấu trúc điều khiển
1. Viết chơng trình nhập vo một số nguyên n. Kiểm tra xem n chẵn hay lẻ.
2. Viết chơng trình giải v biện luận phơng trình bậc nhất theo hai hệ số a, b
nhập từ bn phím.
3. Viết chơng trình giải v biện luận phơng trình bậc hai với các hệ số a, b, c
nhập từ bn phím.
4. Viết chơng trình nhập vo số tiền phải trả của khách hng. In ra số tiền khuyến
mãi với quy định: nếu số tiền phải trả thuộc [200.000, 300.000) thì khuyến mãi
20%. Nếu số tiền phải trả từ 300.000 trở lên thì khuyến mãi 30%. Còn lại thì
không khuyến mãi.
5. Viết chơng trình nhập vo điểm tổng kết của một học sinh v in ra xếp loại cho
học sinh đó với quy định:
+
+++++
lẻ n nếu
chẵn n nếu
1
2
1
...
2
1
2
1
2
1
1
2
32
n
n
11. Viết chơng trình nhập vo một số thực x v số nguyên n, sau đó tính giá trị biểu
thức:
S =
chẵn n nếu
lẻ n nếu
18. Viết chơng trình tìm số nguyên dơng n nhỏ nhất thoả mãn: 1 + 2 + 3 + + n
> 1000.
19. Để tính căn bậc hai của một số dơng a, ta sử dụng công thức lặp sau:
Biên soạn: Nguyễn Mạnh Cờng Trang: 2
Bi tập thực hnh Môn Kỹ thuật lập trình
x(0) = a;
x(n+1) = (x(n) * x(n) + a)/ (2* x(n)) với n >=0.
Quá trình lặp kết thúc khi abs((a(n+1) x(n))/x(n)) < .
v khi đó x(n+1) đợc xem l giá trị gần đúng của sqrt(a).
Viết chơng trình tính căn bậc hai của a với độ chính xác = 0.00001.
20. Lập trình để tính sin(x) với độ chính xác = 0.00001 theo công thức :
sin(x) = x x
3
/3! + x
5
/ 5! + + (-1)
n
x
(2n+1)
/ (2n+1)!.
21. Lập trình để tính tổ hợp chập m của n theo công thức:
C(m, n) = (n(n-1)(n-m+1))/ m!.
Chơng III: kỹ thuật lập trình đơn thể
1. Viết hm kiểm tra xem một số nguyên n có phải l số nguyên tố không. Sau đó,
trong chơng trình chính, nhập vo một số nguyên n, kiểm tra tính nguyên tố của
số n v thông báo ra mn hình.
2. Viết hm tính n! sau đó, trong chơng trình chính, nhập vo một số nguyên n v
tính, in ra kết quả của biểu thức:
S =
)!1(
Biên soạn: Nguyễn Mạnh Cờng Trang: 3
Bi tập thực hnh Môn Kỹ thuật lập trình
Biên soạn: Nguyễn Mạnh Cờng Trang: 4
7. USCLN của hai số a, b đợc định nghĩa nh sau:
USCLN(a, b) = a nếu a = b
= USCLN(a-b, b) nếu a > b
= USCLN(a, b-a) nếu a < b
Viết hm đệ quy tìm USCLN của hai số nguyên a, b. Trong chơng trình
chính, nhập vo hai số nguyên a, b. Tìm v in USCLN của hai số đó lên mn hình.
8. Viết hm tìm kiếm đệ quy trên một dãy số nguyên đã đợc sắp.
9. Các số Fibonacci F[i] đợc định nghĩa đệ quy nh sau:
F[0] =1; F[1] =1;
F[i] = F[i-1] + F[i-2] (với i > 1);
(VD: 1, 1, 2, 3, 5, 8, 13)
Viết hm đệ quy tìm số Fibonacci thứ n trong dãy.
10. Viết hm đệ quy tính n!. (n Z
+
)
11. Viết hm đệ quy tính f(x, n) = x
n
. (xR, n Z). Viết chơng trình chính sử dụng
hm trên để nhập vo số nguyên n, số thực x từ bn phím. Tính v in ra mn hình
giá trị của f(x, n).
12. Viết hm đệ quy tính f(x, n) = n!x
n
. (xR, n Z). Viết chơng trình chính sử
dụng hm trên để nhập vo số nguyên n, số thực x từ bn phím. Tính v in ra
mn hình giá trị của f(x, n).
13. Viết hm đệ quy để đếm số chữ số có trong một số nguyên bất bỳ (Ví dụ số 1263
x
n
) v y(y
1
, y
2
y
n).
Viết chơng trình in ra Tích vô
hớng của hai vector trên.
2. Cho hai mảng a v b có các phần tử đều đã đợc sắp tăng. Lập chơng trình trộn
hai mảng trên để thu đợc một mảng thứ 3 cũng sắp theo thứ tự tăng bằng hai
phơng pháp.
3. Viết chơng trình nhập vo một mảng n số nguyên, sắp xếp mảng theo chiều
tăng dần v in kết quả lên mn hình bằng các phơng pháp:
- Sắp xếp nổi bọt.
- Sắp xếp chọn.
- Sắp xếp chèn.
4. Viết chơng trình nhập vo một mảng n số nguyên, tính tổng các phần tử chẵn,
các phần tử lẻ, các phần tử chia hết cho 3 v in kết quả ra mn hình.
5. Viết chơng trình nhập vo một dãy số thực, tìm phần tử lớn nhất (tơng tự, tìm
phần tử nhỏ nhất) của dãy v in kết quả ra mn hình.
6. Viết chơng trình nhập vo một dãy số nguyên. Tính tổng của các số nguyên tố
trong dãy v in kết quả ra mn hình.
7. Viết chơng trình nhập vo một dãy số nguyên v một số nguyên c. Đếm số lần
xuất hiện v vị trí xuất hiện của c trong dãy. In các kết quả ra mn hình.
8.
Viết chơng trình nhập vo một dãy n số nguyên. Tính trung bình cộng của dãy
v in kết quả tính đợc ra mn hình.
9. Một dãy số a gọi l đợc sắp tăng nếu a[i] <= a[i+1] với mọi i;