1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Mot thuat toan noi tieng Euclide

5 11 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Nội dung

Sau khi thực hiện phép chia và nhận được thương số a cùng số dư, ta phải xét số dư: nếu số dư khác 0, trước khi chuyển sang bước sau, ta phải tính các thừa số tương ứng với số dư nhận [r]

(1)

Một thuật toán tiếng Euclide

Thuật toán Euclide

Để đưa thuật toán, trước hết Euclide nhận xét:

Giả sử f g không đồng thời không số ngun khơng âm f >= g Khi đó: -Nếu g=0 USCLN(f,g)=f

-Nếu g ≠ ta có hệ thức USCLN(f,g)=USCLN(g,r) với r số dư phép chia f cho g

Các bạn hồn tồn chứng minh kết luận trên, cần lưu ý với a, số f g có ước số chung giống hệt ước số chung g f-ag Trong đó, số dư r có dạng f-ag

Từ nhận xét trên, Euclide đưa thuật toán sau để tìm USCLN hai số ngun khơng âm:

Cho số ngun khơng âm, để tìm USCLN thực bước sau: Bước 1: So sánh số thứ hai với

- Nếu số thứ hai dừng lại, kết luận USCLN số thứ - Nếu số thứ hai khác tính số dư phép chia số thứ cho số thứ hai Chuyển sang bước

Bước 2: Thay số thứ số thứ hai, số thứ hai số dư vừa tính được, quay lại bước

Các bạn lưu ý: Số dư bé số chia, dãy giảm số ngun khơng âm khơng thể vơ hạn Do đó, thuật toán Euclide chắn dừng bước đó, số dư

Ví dụ: Tìm USCLN(39,15)

áp dụng thuật tốn này, ta cặp số có thứ tự: (39,15), (15,9), (9,6), (6,3), (3,0)

Như cuối ta thu USCLN(39,15)=3

Tính ưu việt thuật tốn Euclide

(2)

các thuật toán khác, thuật toán lãng phí Chẳng hạn trường hợp f g nguyên tố nhau, yêu cầu tới 2g phép chia

Bây ta nghiên cứu số phép chia mà thuật toán Euclide yêu cầu với g đủ lớn nhỏ hẳn 2g Ta xét dãy số dư thu q trình thực thuật tốn Euclide Để thuận tiện, ta kí hiệu f0=f, f1=g (và giả sử f0>f1) Các số dư thu

sẽ kí hiệu f2, f3, , fn, thương số phép chia f0 cho f1, f1 cho f2, , fn-1 cho

fn kí hiệu a1, a2, , an:

f0=a1f1+f2,

f1=a2f2+f3,

(1) fn-2=an-1fn-1+fn,

fn-1=anfn,

trong đó, USCLN(f,g)= fn Số dư bé số chia nên f0>f1>f2> >fn>0 Từ suy

thương số a1, a2, , an lớn

Bổ đề 1. Với i=1, 2, , n-2 ta ln có fi>2fi+2

Chứng minh. fi=ai+1fi+1+fi+2 >= fi+1+fi+2 > 2fi+2

Bổ đề 2. Giả sử k số tự nhiên cho thuật toán Euclide áp dụng cho số f0, f1

không dừng sau 2k phép chia (tức f2k+1 >= 1) Khi f1 > 2k

Chứng minh Áp dụng bổ đề 1, ta thu f1>2f3>4f5> > 2kf2k+1 >= 2k

Định lí. Số phép chia mà thuật tốn Euclide u cầu không vượt 2[log2 f1]+2

( [x] kí hiệu phần nguyên x)

Chứng minh. Từ bổ đề ta suy k số tự nhiên cho f1 <= 2k số phép chia mà

thuật tốn Euclide u cầu khơng vượt 2k Nên suy số phép chia không vượt 2[log2 f1]+2

Chỉ nguyên việc so sánh đồ thị hàm số y=2x y=2log2 x +2 đủ để không nghi ngờ

về ưu thuật toán Euclide so với thuật toán tự nhiên

Một ưu thuật toán Euclide có nhiều cách mở rộng tổng quát Một thuật tốn thường gặp thuật tốn tính số nguyên u, v cho

fu + gv=USCLN(f,g) (2)

Nó cách giải phương trình kx+ly=m, với k, l, m số nguyên cho k, l khơng đồng thời 0, cịn m chia hết cho USCLN(|k|,|l|) Giả sử |k|u + |l|v=d, |k| um/d+|l|vm/d=m, suy k(c1um/d)+l(c2vm/d)=m với cj= 1, j=1,

Thuật tốn tìm u, v thoả mãn (2) sau: Kí hiệu f0=f, f1=g xét (1) Giả sử với số

(3)

f0p+f1q=fi, f0s+f1t=fi+1 (4)

Khi chia fi cho fi+1 ta nhận thương số ai+1 số dư fi+2, ta tính thừa số

ứng với fi+2: fi-ai+1fi+1=fi+2 nên sử dụng hệ thức (4) cho fi, fi+1 ta thu

f0(p-ai+1s)+f1(q-ai+1t)=fi+2

Như vậy, để giải toán (2), ta áp dụng thuật toán Euclide cho số f g, đồng thời bước giá trị trước, ta phải xem xét thừa số p, q s, t tương ứng với chúng bước đầu tiên, thừa số tương ứng với f, g ta lấy 1, 0, Sau thực phép chia nhận thương số a số dư, ta phải xét số dư: số dư khác 0, trước chuyển sang bước sau, ta phải tính thừa số tương ứng với số dư nhận theo công thức p-as q-at số dư khác cuối thừa số u v tương ứng với thoả mãn (2)

Trong q trình áp dụng thuật toán với f=39 g=15 ta thu dãy số dư 9, 6, 3, thừa số tương ứng với số dư đầu 1, -2; -1, 3; 2, -5 Như vậy,

39.2+15.(-5)=3=USCLN(39, 15)

Bây ta nhận thấy rằng, thuật tốn biến đổi cho số thao tác mà yêu cầu giảm gần lần rưỡi: từ số u v ta cần tính v, sau xác định u theo cơng thức u=(USCLN(f,g)-gv)/f Với f=39, g=15 ta đặt u=(3-15.(-5))/39=2

Dãy phép chia có dư theo sơ đồ (1) sở của thuật toán liên phân số, cho phép thu xấp xỉ thú vị phân số f0/f1 Liên phân số (hữu hạn) biểu

thức dạng:

(5) b1, b2, , bk số tự nhiên

Liên phân số (5) thường kí hiệu ngắn gọn [b1, b2, , bk] Vì f0=a1f1+f2, nên ta có:

Tiếp theo, cách vậy, ta biến đổi f2, Cuối ta thu f1/f0= [a1,

a2, , an] Xét thêm liên phân số [a1], [a1, a2], , [a1, a2, , an-1], giá trị chúng

gọi phân số thích hợp f1/f2 Kí hiệu dạng tối giản phân số thích hợp

p1/q1, p2/q2, , pn-1/qn-1 Các tính chất sau xấp xỉ f0/f1 liệt kê mà không

chứng minh:

(4)

b) Nếu với phân số u/v phân số thích hợp pi/qi, <= i <= n-1 ta có

v>qi

Khơng khó khăn ta xác định phân số thích hợp 15/39 (mà dạng tối giản 5/13) 1/2, 1/3, 2/5 Hiệu phân số ban đầu với với phân số tương ứng -3/26, 2/39 -1/65

Các tính chất a b sử dụng nhiều tập ứng dụng khác có địi hỏi lựa chọn xấp xỉ cho số thực dạng phân số với mẫu số khơng lớn Một ví dụ việc tính toán hệ truyền động cưa gồm bánh răng: Hệ số truyền phải gần với số cho trước, số bánh lại không vượt giới hạn cho trước

Thuật tốn Euclide cịn có nhiều cách tổng qt, mở rộng khác, chẳng hạn: xấp xỉ số vô tỉ, tìm USCLN đa thức, v.v Do thực tiễn tính tốn nay, thuật tốn 2300 năm tuổi tìm chỗ đứng

Phần kết viết, đề nghị bạn làm số tập: Bài tập Tìm USCLN(21042,18921)

Bài tập2 Giản ước phân số có tử số 33 (n số 3) mẫu số 33 (m số 3), với m>n

Bài tập Chứng minh rằng, f0 f1 không nguyên tố nhau, hiệu số phép

chia mà thuật toán tự nhiên yêu cầu với số phép chia mà thuật toán Euclide yêu cầu lớn hiệu số nguyên tố f0/d f1/d với d=USCLN(f0,f1)

Bài tập Chứng minh rằng, số x’, y’ nghiệm tốn (3) nghiệm có dạng x=x’+l’t, y=y’+k’t, k’=k/USCLN(k,l), l’=l/USCLN(k,l), t = 0, ±1, ±2

Bài tập Sử dụng công thức cho tập 4, mơ tả thuật tốn cho phép kiểm tra xem phương trình (3) có nghiệm ngun khơng âm hay khơng, có cách tìm nghiệm

Bài tập Một năm thiên văn trái đất dài 365,242199 ngày đêm Hãy tìm phân số thích hợp số 242199/1000000 Phân số chúng dùng làm chuẩn để tính năm nhuận dương lịch tại?

Bài tập Hãy lập chương trình ngơn ngữ bậc cao thể thuật tốn: a Thuật tốn tự nhiên tính USCLN(f,g)

(5)

Ngày đăng: 04/03/2021, 19:45

TỪ KHÓA LIÊN QUAN

w