Hiển thị kết quả từ 1 đến 8 / 8
  1. #1
    Tham gia
    04-10-2015
    Bài viết
    5
    Like
    0
    Thanked 0 Times in 0 Posts

    Giải thích dùm e cái code này

    Tìm ucln bằng thuật toán Euclide:
    var x,y,UCLN,BCNN,t:integer;
    begin
    readln(x,y);
    BCNN:=x*y;
    t:= y mod x;(em khổng hiểu chỗ này)
    While t <> 0 do
    Begin
    t:= x MOD y;(em khổng hiểu chỗ này)
    x:= y;(em khổng hiểu chỗ này)
    y:= t;(em khổng hiểu chỗ này)
    End;
    ucln:=x;
    writeln('UCLN=',ucln);
    readln;
    end.
    Quote Quote

  2. #2
    Tham gia
    04-12-2004
    Location
    TP.HCM
    Bài viết
    5,242
    Like
    34
    Thanked 895 Times in 566 Posts
    Đây là bài học vỡ lòng trong lập trình nói chung, Pascal nó riêng. Chắc bạn không chịu học lý thuyết?

    Mod (modulus - tiếng Việt đọc là mô-đi-lô hoặc mốt)

    A mô đi lô cho B (trong lập trình Pascal viêt: A mod B) thì ta chia số nguyên, lấy phần dư. Nếu lười đọc lý thuyết, mời xem Video Clip.

    Ví dụ: 10 mod 4 = 2 (tức 10 chia 4 bằng 2 dư 2 - ta lấy dư 2) ; 5 mod 2 = 1 (5 chia 2 bằng 2 dư 1 - ta lấy dư 1)

    Nghĩa là ta cứ chia lấy số nguyên mà đạt giá trị lớn nhất, rồì còn dư bao nhiêu ta lấy số dư đó.

    Còn chỗ phép gán thì bạn đọc Pascal là hiểu. Đại loại là áp cho một biến một giá trị nào đó. Biến t trên ví dụ của bạn làm trung gian giống như có 3 cái ly để đổ nước qua nhau vì nếu bạn chỉ có 2 cái ly bạn sẽ bó tay vì nó trộn chung.
    Được sửa bởi superthin lúc 09:31 ngày 05-10-2015
    "bất khả tri"

  3. #3
    Tham gia
    04-10-2015
    Bài viết
    5
    Like
    0
    Thanked 0 Times in 0 Posts
    em ko hỏi cái đó
    em chỉ muốn hỏi vì sao phải làm thế

  4. #4
    Tham gia
    04-12-2004
    Location
    TP.HCM
    Bài viết
    5,242
    Like
    34
    Thanked 895 Times in 566 Posts
    Nói chung là câu hỏi của bạn nó không rõ ràng. Những chỗ bạn ghi không hiểu thì chỉ là phép gán và toán tử MOD.

    Còn vì sao phải làm thế thì xin trả lời thuật toán Euclide nó thế, bạn gặp ông Euclide mà hỏi thiệt là bó tay bạn luôn. Ví dụ như bài thơ lục bát thì một câu 6 chữ và một câu 8 chữ, tại vì thể thơ nó là như thế. Giờ bạn hỏi tại sao nó thế => đi hỏi mấy ông triết học nhé.
    Được sửa bởi superthin lúc 09:49 ngày 06-11-2015
    "bất khả tri"

  5. #5
    Tham gia
    27-01-2016
    Location
    THCS Phan Đăng Lưu
    Bài viết
    57
    Like
    1
    Thanked 92 Times in 39 Posts
    Cái này đa phần là áp dụng thuật toán Euclide.Nếu hiểu được thuật toán thì cũng gọi là hiểu được code trên rồi !

  6. 5 thành viên Like bài viết này:


  7. #6
    Tham gia
    27-01-2016
    Location
    THCS Phan Đăng Lưu
    Bài viết
    57
    Like
    1
    Thanked 92 Times in 39 Posts
    Nếu bạn hỏi phải tìm ở chỗ nào thì vô wiki mà tìm hiểu.

  8. 5 thành viên Like bài viết này:


  9. #7
    Tham gia
    27-01-2016
    Location
    THCS Phan Đăng Lưu
    Bài viết
    57
    Like
    1
    Thanked 92 Times in 39 Posts
    giải hộ mình bài này với

  10. 5 thành viên Like bài viết này:


  11. #8
    Tham gia
    01-07-2012
    Bài viết
    122
    Like
    10
    Thanked 27 Times in 26 Posts
    @thớt: Sự thật mất lòng, toán lớp 6 chúng nó đều biết chứng minh gcd(a,b) = gcd(b-a, b)

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •