Trang 1 trên tổng số 2 12 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 17 kết quả

Đề tài: tìm số USLN của 2 số

  1. #1
    Ngày gia nhập
    03 2009
    Bài viết
    1

    Mặc định tìm số USLN của 2 số

    xin chào!
    mình là 1 thành viên mới kính cong của C việt và của cả C luôn
    mình có 1 số câu hỏi nhờ mọi người giúp với
    nhập vào 2 số a & b
    viết chương trình tìm USLN của a & b làm thế nào vậy

  2. #2
    Ngày gia nhập
    02 2009
    Bài viết
    38

    Lần sau sớt trước khi hỏi nhé.
    C Code:
    1. int kq = 0; //UCLN nằm trong kq
    2. a = abs(a); //chỉ làm việc với a >=0
    3. b = abs(b); //chỉ làm việc với b >=0
    4. while (a * b !=0 )
    5. {
    6.       if (a >= b)
    7.            a = a % b;
    8.       else
    9.            b = b % a;
    10. }
    11. kq = a + b;
    Biết thì nói không biết thì rửa tai lắng nghe.

  3. #3
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    3,006

    PHP Code:
    int UCLN(int a,int b)
        {
            return (
    b==0)?a:UCLN(ba%b);
        } 
    ^_,^

    Tổng hợp các câu chuyện hài hước vui nhộn, sử dụng Speech Synthesis để đọc : https://www.youtube.com/channel/UCLk...Tjrg/playlists


    Bùi Tấn Quang

  4. #4
    Ngày gia nhập
    11 2008
    Bài viết
    203

    Mặc dù khả năng code rất kém, học C cả năm rùi nhưng vẫn loanh quanh với mấy bài in Hello World, nhưng bài này nằm trong tầm của Love. Love sẽ giúp hết mình luôn. Tặng luôn đoạn tìm bội chung nhỏ nhất:
    BCNN=tích 2 số/UCLN;
    Dán vào DevC hay Turbo C là chạy được:
    Code:
    #include<iostream.h>
    #include<stdio.h>
    #include<conio.h>
    int UCLN(int, int);
    int BCNN(int, int);
    int main()
    {
    	int a, b;
      	printf("Nhap vao so thu nhat: \n");scanf("%d",&a);
      	printf("Nhap vao so thu hai: \n");scanf("%d",&b);
    	printf("Uoc chung lon nhat cua %d va %d la: %d\n\n",a,b,UCLN(a,b));
    	printf("Boi chung nho nhat cua %d va %d la: %d\n",a,b,BCNN(a,b));
    	
    getch();	
    }	
    int UCLN(int a,int b)
    {
            return (b==0)?a:UCLN(b, a%b);
    }	
    int BCNN(int a, int b)
    {
    	return int(a*b)/UCLN(a,b);	
    }

  5. #5
    Ngày gia nhập
    01 2009
    Nơi ở
    Hà Nội
    Bài viết
    205

    return int(a*b)/UCLN(a,b);
    Chỗ này không cần ép kiểu đâu bạn ạ. Mặc dù vẫn rất đúng nhưng bạn nên "giảm tải" đi cho... nhẹ. Mình chỉ góp ý thế thôi ! hi hi ...

  6. #6
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    3,006

    Mặc định tìm số USLN của 2 số

    Trích dẫn Nguyên bản được gửi bởi Loveanygirls Xem bài viết
    Mặc dù khả năng code rất kém, học C cả năm rùi nhưng vẫn loanh quanh với mấy bài in Hello World, nhưng bài này nằm trong tầm của Love. Love sẽ giúp hết mình luôn. Tặng luôn đoạn tìm bội chung nhỏ nhất:
    BCNN=tích 2 số/UCLN;
    Dán vào DevC hay Turbo C là chạy được:
    Code:
    #include<iostream.h>
    #include<stdio.h>
    #include<conio.h>
    int UCLN(int, int);
    int BCNN(int, int);
    int main()
    {
    	int a, b;
      	printf("Nhap vao so thu nhat: \n");scanf("%d",&a);
      	printf("Nhap vao so thu hai: \n");scanf("%d",&b);
    	printf("Uoc chung lon nhat cua %d va %d la: %d\n\n",a,b,UCLN(a,b));
    	printf("Boi chung nho nhat cua %d va %d la: %d\n",a,b,BCNN(a,b));
    	
    getch();	
    }	
    int UCLN(int a,int b)
    {
            return (b==0)?a:UCLN(b, a%b);
    }	
    int BCNN(int a, int b)
    {
    	return int(a*b)/UCLN(a,b);	
    }
    Trích dẫn Nguyên bản được gửi bởi trubavuong Xem bài viết
    Chỗ này không cần ép kiểu đâu bạn ạ. Mặc dù vẫn rất đúng nhưng bạn nên "giảm tải" đi cho... nhẹ. Mình chỉ góp ý thế thôi ! hi hi ...
    thật ra ko sai nhưng là loằng ngoằng mà liệu của thật sự giảm tại ko hả trụ bá vương?????

    nếu muốn biết có thật sự giảm tại đi ko ta hãy thử code này xem nha
    PHP Code:
    printf("%d",sizeof(800*800)); 
    mình dùng BC for DOS nó vẫn ra 2 mặc dù 800*800=640000=0x9c400 vượt ra khỏi kiểu int nhưng bc nó vẫn coi là int
    vậy tức là a*b vốn dĩ nó vẫn là int thì ép kiểu làm gì ?


    bổ xung thêm 1 điều nữa : BCNN thì thường thường là 1 số lớn ko nên dùng kiểu int ở đây
    ko tin thử
    a=800
    b=100
    .........
    ^_,^

    Tổng hợp các câu chuyện hài hước vui nhộn, sử dụng Speech Synthesis để đọc : https://www.youtube.com/channel/UCLk...Tjrg/playlists


    Bùi Tấn Quang

  7. #7
    Ngày gia nhập
    01 2009
    Nơi ở
    Hà Nội
    Bài viết
    205

    Trích dẫn Nguyên bản được gửi bởi langman Xem bài viết
    trụ bá vương?????
    Anh không nhìn chữ ký của em à ? Em là Trử Bá Vương !

  8. #8
    Ngày gia nhập
    06 2007
    Nơi ở
    C:\WINDOWS\system32\dllcache\
    Bài viết
    3,006

    Trích dẫn Nguyên bản được gửi bởi trubavuong Xem bài viết
    Anh không nhìn chữ ký của em à ? Em là Trử Bá Vương !
    á á á á á á á






    thật là nhiều thiếu sót, sr sr sr

    hi hi hi
    ^_,^

    Tổng hợp các câu chuyện hài hước vui nhộn, sử dụng Speech Synthesis để đọc : https://www.youtube.com/channel/UCLk...Tjrg/playlists


    Bùi Tấn Quang

  9. #9
    Ngày gia nhập
    06 2008
    Bài viết
    51

    các bác cho em hỏi sao mọi code trên diễn đàn em cop vào Dev-C++ mà sao ko bao h chạy dc vậy???

  10. #10
    Ngày gia nhập
    12 2008
    Bài viết
    18

    ai giải thích dùm em cái này với
    return (b==0)?a:UCLN(b, a%b);
    }

Quyền hạn của bạn

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