THINK JAVA: CÁCH SUY NGHĨ NHƯ NHÀ KHOA HỌC MÁY TÍNH - Trang 62

tr c a

ị ủ n đ c chia cho 2. N u l , giá tr đ c thay th b i 3

ượ

ế ẻ

ị ượ

ế ở n+1. Ch ng h n, n u giá tr ban đ u (t c đ i

ế

ứ ố

s đ

c truy n vào

ố ượ

sequence) b ng 3, thì k t qu là ta có dãy 3, 10, 5, 16, 8, 4, 2, 1.

ế

Vì đôi khi n tăng và đôi khi gi m, nên s không có cách ch ng minh nào d th y ràng cu i cùng

ễ ấ

n s đ t

ẽ ạ

đ n 1, hay ch

ng trình s k t thúc. V i m t s giá tr đ c bi t c a

ế

ươ

ẽ ế

ộ ố

ị ặ

ệ ủ n, ta có th ch ng minh đ c s k t

ể ứ

ượ ự ế

thúc đó. Ch ng h n, n u giá tr kh i đ u là m t s lũy th a c a hai, thì giá tr c a

ế

ở ầ

ộ ố

ừ ủ

ị ủ n s luôn ch n qua

m i l n l p, cho đ n khi ta thu đ

c 1. Ví d tr

c s k t thúc v i m t dãy nh v y v i giá tr ban đ u

ỗ ầ ặ

ế

ượ

ụ ướ ẽ ế

ư ậ ớ

b ng 16.

Ngoài nh ng giá tr đ c bi t, thì m t câu h i thú v là li u ta có th ch ng minh đ

c r ng đo n ch

ng

ị ặ

ể ứ

ượ ằ

ươ

trình trên có k t thúc v i

ế

t t c

ấ ả nh ng giá tr c a n hay không. Cho đ n gi , ch a ai có th ch ng minh

ị ủ

ế

ư

ể ứ

ho c bác b nó! B n hãy tìm thêm thông tin

http://en.wikipedia.org/wiki/Collatz_conjecture.

7.3 B ng s li u

ố ệ

M t trong nh ng công vi c thích h p v i dùng vòng l p, đó là phát sinh ra b ng s li u. Tr

c khi máy

ố ệ

ướ

tính tr nên ph bi n, m i ng

i đã ph i tính tay các phép logarit, sin, cosin, và nh ng hàm toán h c

ổ ế

ườ

khác.

Đ đ n gi n hóa vi c này, sách toán th

ng in kèm nh ng b ng dài li t kê giá tr các hàm nói trên. Vi c

ể ơ

ườ

t o ra các b ng nh v y r t ch m và nhàm chán, và d m c ph i nhi u l i.

ư ậ ấ

ễ ắ

ề ỗ

Khi máy tính xu t hi n, đã có nh ng ph n ng ban đ u ki u nh : “Đi u này th t tuy t! Gi ta có th

ả ứ

ư

dùng máy tính đ t o ra các b ng, vì v y s không có l i.” Đi u này tr nên (g n nh là) s th t nh ng

ể ạ

ậ ẽ

ư

ự ậ

ư

v n ch a đ ng t m nhìn h n h p. Không lâu sau đó, máy tính và máy b túi đã xu t hi n tràn lan và

b ng s tr nên l i th i.

ố ở

, g n nh v y. Có nh ng phép tính mà máy tính l y con s t b ng đ có giá tr g n đúng, r i th c hi n

Ừ ầ

ư ậ

ố ừ ả

ị ầ

tính toán nh m c i thi n k t qu g n đúng này. tr

ng h p khác, có nh ng l i n m ngay b ng s ,

ế

ả ầ

Ở ườ

ỗ ằ

ở ả

đ

c bi t đ n nhi u nh t là b ng mà máy Intel Pentium đã dùng đ th c hi n phép chia v i s có d u

ượ

ế ế

ể ự

ớ ố

ph y đ ng.

M c dù b ng loga không còn h u d ng nh x a, song nó v n dùng đ

c làm ví d v tính l p. Ch

ng

ư ư

ượ

ụ ề

ươ

trình sau in ra m t dãy các s c t bên trái cùng v i giá tr logarit c a chúng c t ph i:

ố ở ộ

ở ộ

double

x = 1.0;

while

(x < 10.0) {

System.out.println(x +

" "

+ Math.log(x));

x = x + 1.0;

}

K t qu c a ch

ng trình này là:

ế

ả ủ

ươ

1.0 0.0

2.0 0.6931471805599453

3.0 1.0986122886681098

4.0 1.3862943611198906

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.