Tải bản đầy đủ (.doc) (11 trang)

Bài tập lập trình JAVA

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (130.49 KB, 11 trang )

BÀI TẬP THỰC HÀNH NGÔN NGỮ LẬP TRÌNH JAVA
Viết chương trình cho mỗi yêu cầu sau đây:
1. In họ và tên của chính mình ra màn hình
2. Tính diện tích hình thang có đáy lớn bằng 7, đáy nhỏ bằng 5,
chiều cao bằng 6.
3. Tính diện tích của hình tròn bán kính bằng 3
4. Tính diện tích của tam giác có ba cạnh lần lượt bằng 5,6,7.
5. Tính giá trị của
yx
yx

+
với x=1234, y=4321.
6. Tính giá trị của
xxx
++
với x=3
7. Tính giá trị của
3
4
2
3
4)2(log
−−++
xxx
với x=6
8. 543200 giây là bao nhiêu giờ, phút, giây? Ví dụ 3662 giây là
1giờ 1 phút 2 giây.
BÀI TẬP THỰC HÀNH SỐ 2
Viết chương trình cho mỗi yêu cầu sau đây:
1. Tính diện tích hình thang có đáy lớn, đáy nhỏ, chiều cao


nhập từ bàn phím.
2. Tính diện tích của hình tròn bán kính nhập từ bàn phím
3. Tính diện tích của tam giác có độ dài ba cạnh nhập từ bàn
phím.
4. Tính giá trị của
yx
yx

+
với x, y nhập từ bàn phím.
5. Tính giá trị của
xxx
++
với x nhập từ bàn phím
6. Tính giá trị của
3
4
2
3
4)2(log
−−++
xxx
với x nhập từ bàn phím
7. Nhập một số nguyên dương n (giây). Viết chương trình tính
n (giây) là bao nhiêu giờ, phút, giây? Ví dụ 3662 giây là 1giờ
1 phút 2 giây.
BÀI TẬP THỰC HÀNH SỐ 3 (if)
1. Viết chương trình giải phương trình bậc nhất
2. Viết chương trình giải phương trình bậc hai với a,b,c nhập từ
bàn phím.

3. Tìm số ngày của năm n, biết rằng năm nhuận là năm chia hết
cho 400 hoặc chia hết cho 4 nhưng không chia hết cho 100.
Ví dụ: năm 2000, 2004 là năm nhuận có 366 ngày; năm
1900, 1945 không là năm nhuận có 365 ngày.
4. Nhập vào 4 số nguyên. Đưa ra số lớn nhất, số bé nhất trong
các số đó.
5. Nhập vào độ dài của 3 đoạn thẳng. Kiểm tra chúng có làm
thành tam giác được không. Nếu có hãy tính diện tích của
tam giác đó.
6. Nhập vào tọa độ của hai điểm trên mặt phẳng. Tính khoảng
cách giữa hai điểm.
7. Nhập vào tọa độ một điểm. Kiểm tra điểm này có nằm trong
hình tròn tâm 0 bán kính bằng 1 hay không.
8. Nhập vào một kí tự, thông báo đó là chữ cái, chữ số hay là kí
tự khác.
BÀI TẬP THỰC HÀNH SỐ 4 (switch+if)
1. Nhập vào hai số nguyên a, b và dấu của một phép toán: +, -,
*, /. Tính giá trị khi thực hiện phép toán giữa a và b.
2. Cho biết ngày 1/3/2008 là thứ 7. Nhập vào một ngày trong
tháng 3. Thông báo đó là ngày thứ mấy?
3. Nhập vào số lượng điện tiêu thụ trong tháng. Tính số tiền
phải trả biết rằng: 50 khw đầu tiên đơn giá 550đ, 50k tiếp
theo đơn giá 850đ, 100k tiếp theo đơn giá 1200đ, còn lại đơn
giá 1500đ.
4. Nhập độ dài 3 cạnh của một tam giác. Thông báo tam giác
đó là tam giác đều, vuông cân, cân, hay tam giác thường.
BÀI TẬP THỰC HÀNH JAVA SỐ 5 (for)
1. In các số chẵn trong đoạn [1,20] trên một dòng, các số lẻ
trong đoạn đó lên dòng kế tiếp bằng hai cách.
2. In ra màn hình các số từ 1 đến 100, mỗi dòng 10 số

3. Nhập 2 số tự nhiên a,b. In ra màn hình các số chia hết cho 3
hoặc 5 nằm trong đoạn [a,b].
4. Tính tổng các số tự nhiên từ 1 đến n
5. Tính
22
21 nS +++= 
với n nhập từ bàn phím
6. Tính
n
S
1
2
1
1 +++= 
, với n nhập từ bàn phím
7. Tính
!
1
!2
1
1
n
S +++= 
, với n nhập từ bàn phím
8. Tính
n
S
n
1
)1(

2
1
1
1−
−++−= 
, với n nhập từ bàn phím
9. Tính tổng
naa
S
+
++=
11

, với a, n là các số tự nhiên nhập từ
bàn phím
10.In bảng mã ASCII ra màn hình gồm mã và kí tự tương ứng
11. In n số hạng đầu tiên của dãy Fibonacci.
12. Kiểm tra một số n nhập từ bàn phím có là số nguyên tố hay
không.
13. In tất cả các số nguyên tố nhỏ hơn 1000 ra màn hình
14. Tính tổng các ước số nguyên dương của một số n nhập từ
bàn phím.
15. Số nguyên dương n được gọi là số hoàn chỉnh nếu tổng các
ước nguyên dương của nó bằng 2n. In các số hoàn chỉnh
nhỏ hơn 1000.
16. Tính
n
2
với n nguyên dương nhập từ bàn phím.
17. Giải bài toán vừa gà vừa chó.

18. In một hình vuông gồm các dấu * có cạnh bằng n (nhập từ
bàn phím)
19. In một hình tam giác vuông gồm các dấu * có chiều cao bằng
n (nhập từ bàn phím).
20. Viết chương trình in bảng cửu chương.
BÀI TẬP THỰC HÀNH JAVA SỐ 6 (while)
1. Tìm số n bé nhất sao cho n! lớn hơn một số m cho trước
2. Kiểm tra một số có là số nguyên tố?
3. Tìm UCLN bằng 2 thuật toán
4. Tìm BCNN bằng 2 thuật toán
5. Tính gần đúng exp(x) bằng công thức
!!2!1
1
2
k
xxx
e
k
x
++++= 
với độ chính xác
001.0=
ε
.
6. Tính gần đúng sin(x) bằng công thức
+−+−=
!7!5!3
)(
753
xxx

xxSin
7. Đổi số nguyên dương n từ hệ thập phân ra hệ nhị phân, hệ
thập lục phân.
8. Phân tích một số ra thừa số nguyên tố
9. Tính tổng của các chữ số trong một số nguyên dương n
nhập từ bàn phím.
10.Viết chương trình tìm nghiệm gần đúng của phương trình
bằng phương pháp chia đôi
a.
01
3
=−− xx
trên đoạn
[ ]
2,1
b.
01 =−xSinx
trên đoạn
[ ]
2,0
BÀI TẬP THỰC HÀNH SỐ 7 (phương thức)
1. Viết phương thức tính max của hai số. Dùng phương thức
này tìm số lớn nhất trong 4 số a,b,c,d nhập từ bàn phím
2. Viết phương thức giải phương trình bậc 1, bậc 2. Dùng
phương thức giải các phương trình với hệ số nhập từ bàn
phím.
3. Viết phương thức tính n!. Dùng phương thức này để tính gần
đúng số e với độ chính xác epsilon=0.01
4. Viết phương thức tìm ước chung lớn nhất của hai số a và b.
Dùng phương thức này để tối giản phân số

n
m
với m, n nhập
từ bàn phím.
5. Dùng phương thức đã viết trong câu 3, thực hiện phép toán
cộng phân số
q
p
n
m
+
6. Viết phương thức kiểm tra một số có là số nguyên tố hay
không. Dùng phương thức này in các số nguyên tố bé hơn
1000
7. Viết phương thức tìm nghiệm gần đúng một phương trình
0)( =xf
trên đoạn
],[ ba
, lấy phương trình trong bài 10 (bài tập
số 6)
8. Viết các phương thức sau đây:
a. Kiểm tra độ dài 3 đọan thẳng có lập thành tam giác hay
không.
b. Tính nửa chu vi khi biết độ dài 3 cạnh của tam giác
c. Tính diện tích tam giác
Sử dụng các phương thức trên tính diện tích của tam giác
khi nhập độ dài 3 cạnh.
9. Viết phương thức làm tròn số như hàm round của excel.
10.Viết phương thức in bảng cửu chương n (n=2, ,9).
BÀI TẬP THỰC HÀNH SỐ 8 (Phương thức trong Java - tt)

1. Viết phương thức tính tổng các chữ số trong một số tự nhiên n. Dùng phương
thức này để in ra các số nhỏ hơn 1000 có tổng các chữ số bằng 9.
2. Viết các phương thức cần thiết như tìm mẫu số chung, bội chung nhỏ nhất,
ước chung lớn nhất, in phân số để cộng, trừ, nhân, chia 2 phân số.
3. Tính gần đúng tích phân xác định

b
a
dxxf )(
theo phương pháp hình thang.
4. Cho biết hàm random của lớp Math trả về một số thực ngẫu nhiên trong đoạn
[ ]
1,0
. Viết phương thức sinh số ngẫu nhiên trong đoạn
[ ]
ba,
. Diện tích hình
tròn tâm O bán kính bằng
r
có thể tính bằng cách sau: gieo ngẫu nhiên
n
điểm vào hình vuông có cạnh
ra 2=
ngoại tiếp với hình tròn đã cho, giả sử có
1
n
điểm rơi vào hình tròn. Khi đó diện tích hình tròn
ar
S
n

n
S
1
=
, trong đó
a
S

diện tích hình vuông. Viết phương thức tính diện tích hình tròn theo cách
này. Dùng phương thức để tính gần đúng số
pi
(chính là diện tích hình tròn
khi bán kính bằng 1).
5. Viết phương thức tìm giá trị lớn nhất của
)(xf
trên
[ ]
ba,
. Sử dụng phương
thức này và phương thức trong câu 4, tính gần đúng tích phân

b
a
dxxf )(
bằng
phương pháp Monte-Carlo (miền lấy tích phân xem như hình tròn câu 4, hình
vuông thay thế bằng một hình chữ nhật tùy ý xác định bởi các đường thẳng
max,0,, ==== yybxax
với
max

là giá trị lớn nhất của
)(xf
trên đoạn
[ ]
ba,

6. Đường thẳng
0=++ cbyax
chia mặt phẳng thành hai miền âm và dương. Một
điểm
),( vu
nằm ở miền âm nếu như
0<++ cbvau
và ngược lại. Xây dựng
phương thức trả về giá trị -1 nếu đầu vào là điểm nằm ở miền âm, trả về 1
nếu điểm nằm ở miền dương, trả về 0 nếu điểm nằm trên đường thẳng.
Nhập tọa độ 3 đỉnh một tam giác, thông báo tam giác này có nằm trọn trong
một miền hay không?
7. Trong mặt phẳng cho 2 đoạn thẳng AB và CD có tọa độ là các cặp số thực
tương ứng
),(),,(),,(),,( ydxdycxcybxbyaxa
. Viết phương thức để kiểm tra hai
đoạn thẳng có cắt nhau hay không, tức là chúng chỉ có một điểm chung hay
không. Nếu có ít nhất một điểm chung phương thức trả về giá trị true, ngược
lại trả về giá trị false (hướng dẫn SBT tin học 11).
8. Trong mặt phẳng một điểm có tọa độ
),( yx
trong hệ tọa độ Đề-các có thể xác
định bằng cặp
),(

ϕ
r
trong hệ tọa độ cực. Viết các phương thức để chuyển đổi
giữa hai hệ tọa độ này (lớp Math có hàm atan để tính arctg).
BÀI TẬP THỰC HÀNH SỐ 9 (MẢNG MỘT CHIỀU)
Các bài tập sau đây đều đều phải nhập n phần tử vào mảng 1 chiều rồi mới xử lý. Yêu
cầu ban đầu viết trong hàm main(), sau đó đưa ra trở thành phương thức rồi sử dụng để
kiểm tra lại.
1. Đếm số số dương, số âm, số không trong mảng
2. Tính tổng các số trong mảng
3. Tính tổng các số chẵn trong mảng
4. Tính trung bình cộng các số dương, trung bình cộng các số âm
5. Tính tổng các số ở vị trí chẵn
6. Biến đổi các số dương trong mảng thành số 1, các số còn lại thành số 0
7. Hiệu của tổng các số ở vị trí chẵn và tổng các số ở vị trí lẻ
8. Số lớn nhất, số bé nhất trong mảng
9. Số dương bé nhất, số âm lớn nhất trong mảng
10.Nhập một số nguyên x. Tìm vị trí xuất hiện của x nếu có, ngược lại thì thông báo
không có số này.
11. Nhập số nguyên x. Số này xuất hiện bao nhiêu lần trong mảng
12. Vị trí đầu tiên của số lẻ, vị trí cuối cùng của số chẵn
13. Đổi chỗ giữa số lẻ đầu tiên và số chẵn cuối cùng của mảng nếu có
14. Đổi chỗ các số đối xứng qua giữa mảng.
15. Tính trung bình cộng các số trong mảng. Tìm vị trí của số có giá trị “gần” với giá
trị trung bình cộng này nhất. Khoảng cách giữa 2 số là trị tuyệt đối của hiệu 2 số
đó.
16. Nhập 0<k<n+1, xóa số ở vị trí thứ k.
17. Nhập 0<k1,k2<n+1, xóa số ở vị trí k1 và k2.
18. Giả sử dãy được nhập n-1 số. Nhập một số nguyên x, thêm x vào cuối dãy.
Tương tự, thêm x vào đầu dãy.

19.Giả sử như câu 18, nhập 0<k<n+1 và một số x tùy ý. Chèn số x vào vị trí k.
20. Sắp xếp để thu được dãy tăng dần, dãy giảm dần.
21. Nhập 0<k<n+1, sắp xếp các số từ vị trí 1 đến k thành dãy tăng, từ vị trí k+1 đến n
thành dãy giảm dần.
22. Sắp xếp thành một dãy tăng dần. Nhập số nguyên x, chèn x vào tại vị trí thích
hợp để dãy vẫn là một dãy tăng.
23.Kiểm tra dãy đã nhập có toàn là số 0
24.Kiểm tra dãy đã nhập có toàn là số lẻ
25.Kiểm tra dãy đã nhập có phải là một dãy tăng
26.Kiểm tra dãy đã nhập có làm thành một cấp số cộng
27.Kiểm tra dãy đã nhập có làm thành một cấp số nhân
28. Kiểm tra dãy có là dãy số Fibonaci (dãy có 2 số đầu tiên bằng 1, mỗi số còn lại
bằng tổng của 2 số liên tiếp trước nó: 1,1, 2, 3, 5, 8,…)
29. Kiểm tra dãy có toàn các số chia hết cho 2 hoặc 3 hay không
30. Kiểm tra dãy có toàn là số nguyên tố hay không
31. Kiểm tra các giá trị của dãy có đối xứng hay không. Ví dụ 1, 3, 6, 8, 6, 3, 1 là dãy
đối xứng
32.Kiểm tra một dãy có toàn là các số chính phương hay không?
BÀI TẬP THỰC HÀNH SỐ 9 (MẢNG 1 CHIỀU)
Yêu cầu: Mỗi câu nhỏ trong các bài tập tổ chức thành một phương thức
1. Sinh ngẫu nhiên các n số nguyên trong đoạn 1 đến 100 cho mảng 1 chiều. Sau đó
a) In các số trong mảng lên màn hình
b) Tính tổng, trung bình cộng, thống kê có bao nhiêu số chẵn, bao nhiêu số lẻ, trung
bình cộng của các số chẵn, trung bình cộng các số lẻ.
c) Tìm số lớn nhất, số bé nhất, số chẵn lớn nhất, số chẵn bé nhất trong mảng.
d) Tìm số lớn nhì, số bé nhì trong mảng.
e) Tìm số lệch ít nhất với số TB cộng của các số trong mảng.
g) Tìm số lẻ xuất hiện đầu tiên trong mảng, số chẵn cuối cùng trong mảng. Đổi chỗ
hai số này với nhau.
h) Đổi chỗ các số đối xứng qua giữa mảng.

2. Nhập n số nguyên vào mảng một chiều. Sau đó:
a) Nhập một số nguyên x, tìm một vị trí của x theo thuật toán tìm kiếm tuần tự.
b) Nhập một số nguyên x, tìm một vị trí của x theo thuật toán tìm kiếm nhị phân.
c) Sắp xếp sao cho các số chẵn dồn về đầu mảng, các số lẻ dồn về cuối mảng.
d) Nhập một số nguyên dương k<n. Sắp các số từ vị trí thứ 1 đến vị trí thứ k tăng
dần, các số từ vị trí thứ k+1 đến cuối dãy giảm dần.
e) Sắp xếp các số trong mảng thành một dãy tăng theo thuật toán nổi bọt.
f) Nhập một số nguyên dương k<=n. Xóa số ở vị trí thứ k, sau khi xóa dồn các số
phía sau để không có ô trống.
g) Nhập một số nguyên x tùy ý. Chèn x vào vị trí thích hợp để mảng là một dãy tăng.
3. Sinh ngẫu nhiên n số nguyên trong đoạn [1,2n] không được lặp lại. Sau đó
a) Kiểm tra trong dãy có tồn tại số nguyên tố nào không.
b) In các số nguyên tố trong dãy ra màn hình.
c) Kiểm tra các số trong dãy có lập thành một dãy tăng hay không.
d) Kiểm tra trong dãy có tồn tại số chính phương nào không.
e) In các số chính phương trong dãy ra màn hình.
BÀI TẬP THỰC HÀNH SỐ 10 (MẢNG 2 CHIỀU)
1. Viết các phương thức thực hiện các công việc cơ bản sau đây:
a. Nhập hoặc sinh ngẫu nhiên n*n số nguyên từ 1 đến 20 vào một mảng 2 chiều.
b. In các số trong mảng ra màn hình
c. Tính tổng các phần tử trong mảng
d. Tính tổng các phần tử trên đường chéo chính, đường chéo phụ
e. Tính tổng các số trên mỗi dòng
f. Tìm một dòng có tổng lớn nhất
g. Đổi chỗ dòng thứ i và dòng thứ j cho nhau.
h. Đổi chỗ các số có vị trí đối xứng nhau qua đường chéo chính
i. Kiểm tra tất cả các số trong tam giác dưới có toàn bằng 0 hay không.
2. Viết chương trình cộng hai ma trận, nhân hai ma trận có kích thước thích hợp
3. Viết chương trình để tạo ra một ma trận các số được sắp xếp tăng dần theo một
vòng xóay theo chiều kim đồng hồ sau đây.

1 2 3 4 5
16 17 18 19 6
15 24 25 20 7
14 23 22 21 8
13 12 11 10 9
4. Viết chương trình giải hệ phương trình ĐSTT n phương trình, n ẩn số bằng phương
pháp Gauss.
5. Viết chương trình tính định thức của ma trận cấp n.

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×