• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Tìm ước số chung lớn nhất và Bội số chung nhỏ nhất

Các thủ thuật liên quan đến xử lý chuỗi và thời gian
User avatar
clarkkent
Mạnh Thường Quân
Mạnh Thường Quân
Posts: 1641
Joined: Wed 16/04/2008 11:25 am
Location: Chợ Lách - Bến Tre
Been thanked: 31 times
Contact:

Tìm ước số chung lớn nhất và Bội số chung nhỏ nhất

Postby clarkkent » Thu 26/02/2009 8:00 am

Thủ thuật: Tìm ước số chung lớn nhất
Tác giả: Nguyễn Trung Tín
Mô tả: hàm tìm ước số chung lớn nhất


Có 2 cách
Cách 1:

Code: Select all

  1. Function USCLN1(A As Integer, B As Integer) As Integer
  2. While A <> 0 And B <> 0
  3.     Dim t As Integer
  4.     t = A: A = B: B = t Mod B
  5. Wend
  6. USCLN1 = A + B
  7. End Function


Cách 2:

Code: Select all

  1. Function USCLN2(A As Integer, B As Integer) As Integer
  2. While A <> 0 And B <> 0
  3. If A >= B Then
  4.     A = A - B
  5. Else
  6.     B = B - A
  7. End If
  8. Wend
  9. USCLN2 = A + B
  10. End Function


• Hôm bây: www.tinsoftware.com ^ ^
Cố gắng lên...

User avatar
clarkkent
Mạnh Thường Quân
Mạnh Thường Quân
Posts: 1641
Joined: Wed 16/04/2008 11:25 am
Location: Chợ Lách - Bến Tre
Been thanked: 31 times
Contact:

Re: Tìm ước số chung lớn nhất và Bội số chung nhỏ nhất

Postby clarkkent » Thu 26/02/2009 8:02 am

Thủ thuật: Tìm bội số chung nhỏ nhất
Tác giả: Nguyễn Trung Tín
Mô tả: hàm bội số chung nhỏ nhất


Cần phải có 1 trong 2 hàm tìm USCLN ở trên

Code: Select all

  1. Function BSCNN(A As Integer, B As Integer) As Integer
  2. Dim ka, kb As Integer
  3. ka = (A * B): kb = USCLN1(A, B)
  4. BSCNN = ka / kb
  5. End Function


Không biết có cách nào gọn hơn???
Project:
USCLN_BSCNN.rar
Re: Tìm ước số chung lớn nhất và Bội số chung nhỏ nhất
(1.37 KiB) Downloaded 1505 times
• Hôm bây: www.tinsoftware.com ^ ^
Cố gắng lên...

User avatar
Kasper
Guru
Guru
Posts: 1063
Joined: Fri 16/05/2008 10:54 am
Has thanked: 2 times
Been thanked: 76 times
Contact:

Re: Tìm ước số chung lớn nhất và Bội số chung nhỏ nhất

Postby Kasper » Thu 26/02/2009 8:38 am

Code: Select all

  1.  
  2. MsgBox USCLN1(10, -5) -> Kết quả là -5  :-/  :-/
  3.  


Trong toán học, nếu số nguyên d chia hết số nguyên a thì số d được gọi là của số nguyên a, a được gọi là bội của d. Số nguyên dương d lớn nhất là ước của cả hai số nguyên a, b được gọi là ứơc chung lớn nhất (ƯCLN) của a và b. Trong trường hợp cả hai số nguyên a và b đều bằng 0 thì chúng không có ƯCLN vì khi đó mọi số tự nhiên khác không đếu là ước chung của a và b. Nếu chỉ một trong hai số a hoặc b bằng 0, số kia khác không thì ƯCLN của chúng bằng giá trị tuyệt đối của số khác không.
Theo Wikipedia


Tìm USCLN như trên mà đi thi là 1 điểm rồi :D
Lành tợ tòng, ác tợ hoa,
Nhà hòa muôn việc đều nên.

set.8x
Posts: 1
Joined: Tue 31/03/2009 7:28 pm

Re: Tìm ước số chung lớn nhất và Bội số chung nhỏ nhất

Postby set.8x » Tue 31/03/2009 7:35 pm

Cho em hỏi:Cái WEnd trong hàm là sao vậy.Viết sai bét hết,nếu cho hai số a=4,b=5 ,thì uscln=5.Tại sao lại vây.Thử chạy thuật toán bằng tay coi các anh chị

User avatar
clarkkent
Mạnh Thường Quân
Mạnh Thường Quân
Posts: 1641
Joined: Wed 16/04/2008 11:25 am
Location: Chợ Lách - Bến Tre
Been thanked: 31 times
Contact:

Re: Tìm ước số chung lớn nhất và Bội số chung nhỏ nhất

Postby clarkkent » Wed 01/04/2009 5:01 pm

set.8x wrote:Cho em hỏi:Cái WEnd trong hàm là sao vậy.Viết sai bét hết,nếu cho hai số a=4,b=5 ,thì uscln=5.Tại sao lại vây.Thử chạy thuật toán bằng tay coi các anh chị

- Đó là vòng lặp
- Sao bằng 5 được, bạn thử lại coi

- Cái này là mình mới học toán rời rạc rồi mình dựa vào công thức để viết ra thôi, chưa có kiểm tra mấy cái dk ji ji đó :P
• Hôm bây: www.tinsoftware.com ^ ^
Cố gắng lên...

User avatar
xuanquy_th
Guru
Guru
Posts: 803
Joined: Tue 05/08/2008 9:15 pm
Location: Thanh Hoá
Has thanked: 1 time
Been thanked: 10 times
Contact:

Re: Tìm ước số chung lớn nhất và Bội số chung nhỏ nhất

Postby xuanquy_th » Thu 02/04/2009 9:04 am

Code: Select all

  1.  
  2. 'Nếu tôi tìm theo các này thì có được không?
  3.     'Gia lap mang cac so can tim
  4.     Dim md(1)  As Integer
  5.     Dim i As Integer, j As Integer
  6.     For i = 0 To UBound(md)
  7.         md(i) = (Rnd * 100)
  8.     Next i
  9.     'Xac dinh cac dieu kien de tin USCLN va BSCNN
  10.     Dim mMin As Integer, mMax As Integer, mTich As Long
  11.     mTich = 1: mMin = md(0): mMax = md(0)
  12.     For i = 0 To UBound(md)
  13.         If mMin > md(i) Then mMin = md(i)
  14.         If mMax < md(i) Then mMax = md(i)
  15.         mTich = mTich * md(i)
  16.     Next i
  17.     'Tim USCLN
  18.     Dim mUSCLN As Integer, flg As Boolean
  19.     For i = 1 To mMin
  20.         flg = True
  21.         For j = 0 To UBound(md)
  22.             flg = (flg And (md(j) Mod i = 0))
  23.         Next j
  24.         If flg Then mUSCLN = CInt(i)
  25.     Next i
  26.     'Tim BSCNN
  27.     Dim mBSCNN As Integer
  28.     For i = mMax To mTich
  29.         flg = True
  30.         For j = 0 To UBound(md)
  31.             flg = (flg And (i Mod md(j) = 0))
  32.         Next j
  33.         If flg Then mBSCNN = CInt(i): Exit For
  34.     Next i
  35.     MsgBox "USCLN la: " & mUSCLN & Space(20) & "BSCNN la: " & mBSCNN
Khi Chúa Trời đóng cánh cửa này lại, Ngài sẽ mở một cánh cửa khác cho ta.
Nhưng ta thường nhìn quá lâu vào cánh cửa đã đóng nên không thấy được có một cánh cửa khác đang mở ra cho ta!!!

duongtao
Posts: 4
Joined: Mon 01/10/2012 9:26 pm

Re: Tìm ước số chung lớn nhất và Bội số chung nhỏ nhất

Postby duongtao » Tue 16/10/2012 11:43 pm

mình vừa hoc vb6,thấy câu lệnh bài này mình thật sự khó hiểu.ai giải thích dùm mình tại sao a=a-b else b=b-a thì lại tìm dc ước chung của 2 số.

User avatar
dazzlingvit
Guru
Guru
Posts: 960
Joined: Tue 18/01/2011 10:21 am
Location: Sinh ra từ hư vô, sống trong thế giới ảo...
Has thanked: 7 times
Been thanked: 112 times
Contact:

Re: Tìm ước số chung lớn nhất và Bội số chung nhỏ nhất

Postby dazzlingvit » Thu 18/10/2012 1:50 am

Dazzling V.I.T
Hãy gọi tôi là vịt :)

never19
Posts: 2
Joined: Tue 08/05/2012 12:13 pm

Re: Tìm ước số chung lớn nhất và Bội số chung nhỏ nhất

Postby never19 » Sun 30/12/2012 2:01 pm

Mấy a cho e hỏi nếu Tìm ước số chung lớn nhất và Bội số chung nhỏ nhất của 3 số thì phải làm thế nào?


Return to “[VB] Chuỗi và Thời gian”

Who is online

Users browsing this forum: No registered users and 0 guests