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

nguyên. Sau đây là m t ph

ng th c th c hi n m t kĩ thu t (t

ng đ i) nhanh đ tính lũy th a s

ươ

ươ

ừ ố

nguyên:

public static int

pow(

int

x,

int

n) {

if

(n == 0)

return

1;

// tính x mũ n/2 bằng cách đệ quy

int

t = pow(x, n/2);

// nếu n chẵn, kết quả là t bình phương

// nếu n lẻ, kết quả là t bình phương nhân với x

if

(n%2 == 0) {

return

t*t;

}

else

{

return

t*t*x;

}

}

V n đ v i ph

ng th c này là ch nó ch ho t đ ng đ

c n u k t qu nh h n 2 t . Hãy vi t l i

ề ớ

ươ

ở ỗ

ạ ộ

ượ ế

ế

ỏ ơ

ế ạ

ph

ng th c đ k t qu là m t

ươ

ứ ể ế

ộ BigInteger. Tuy v y các tham s v n là s nguyên.

ố ẫ

B n có th dùng các ph

ng th c cho BigInteger là

ươ

add và multiply, song đ ng dùng

pow, nh v y s

ư ậ ẽ

ch ng còn gì đ làm.

Bài t p 6

N u b n thích đ h a, bây gi đúng là lúc đ c đ n Ph l c

ế

ồ ọ

ọ ế

ụ ụ A r i làm các bài t p đó.

ậ ở

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.