Đánh giá, nhận xét, review các công ty tuyển dụng
Trang 1 trên tổng số 3 123 Cuối cùngCuối cùng
Từ 1 tới 10 trên tổng số 27 kết quả

Đề tài: Tìm ƯCLN & BCNN của số tự nhiên

  1. #1
    Ngày gia nhập
    01 2008
    Bài viết
    2

    Wink Tìm ƯCLN & BCNN của số tự nhiên

    Giúp đệ năm 1 với mấy huynh, mấy tỉ pro.
    Tìm ƯCLN & BCNN của n số tự nhiên.
    Nghĩ đau đầu quá mà chưa ra mấy anh oai.

  2. #2
    Ngày gia nhập
    07 2007
    Nơi ở
    TP HCM
    Bài viết
    6

    Bài tập này thầy cho mà không có hướng dẫn cho newbie à?
    tìm UCLN của a, b thì dùng thuật toán Euclide
    tìm BCNN thì dùng công thức:BCNN = (a * b) / UCLN(a, b)
    thuật toán Euclide (đọc là Ơ-clít)

    Code:
    int kq = 0; //UCLN nằm trong kq
    a = abs(a); //chỉ làm việc với a >=0
    b = abs(b); //chỉ làm việc với b >=0
    while (a * b !=0 )
    {
          if (a >= b) 
               a = a % b;
          else
               b = b % a;
    }
    kq = a + b;
    chúc bạn thành công.

    Lưu ý: Để code vào trong tag code
    Đã được chỉnh sửa lần cuối bởi Kevin Hoang : 28-01-2008 lúc 09:46 AM. Lý do: Nhắc nhở

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

    Bài tìm UCLN nè:

    Code:
    #include <iostream.h>
    #include <conio.h>
    void main()
    {
      int a,b,r;
      int n1,n2;
      clrscr();
      cout<<endl<<"CHUONG TRINH TINH UCLN CUA 2 SO TU NHIEN";
      cout<<endl<<"Nhap vao 2 so can tinh: ";
      cin>>n1>>n2;
      if(n1>n2)
      {
       a=n1;
       b=n2;
      }
      else
      {
       a = n2;
       b = n1;
      }
      r = a%b; //tim so du cua a chia cho b
      //while(r!=0) //chung nao so du khac 0 thi con vao vong lap
      for(; r!=0 ; )
      {
         a=b;
         b=r;
         r = a%b;
      }
      cout<<endl<<Uoc chung lon nhat cua<<n1<<" va "<<n2<<"la"<<b;
      getch();
    }
    Còn BCNN thì công thức có bạn đưa lên rồi bạn cứ theo thế mà làm là ra ngay ý mà^^.
    Đã được chỉnh sửa lần cuối bởi traitimbanggia : 28-01-2008 lúc 10:32 AM.

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

    Tìm UCLN với BCNN của 2 số thì em làm được rồi, còn n số thì hix hix
    Mấy huynh xem zúp bài này sai chỗ nèo với
    Code:
    #include<stdio.h>
    #include<conio.h>
    #include<math.h>
    int ucln(int a,int b)
    {
    	if(b=0) return a;
    		return ucln(b,a%b);
    }
    main()
    {
      int a[10],i,n,uc,bc;
    	printf("n= ");scanf("%d",&n);
    	for(i=0;i<n;i++){
    		printf("a[%d]= ",i);scanf("%d",&a[i]);
    	}
    	uc=ucln(a[0],a[1]);
    	
    	for(i=2;i<n;i++) uc=ucln(uc,a[i]);
    	printf("UCLN = %d",uc);
      getch();
    }
    Nó báo lỗi gì lạ quá, giải thích zùm đệ lun với
    Thank mấy huynh !

  5. #5
    Ngày gia nhập
    12 2006
    Nơi ở
    US
    Bài viết
    1,918

    Nó báo lỗi gì lạ quá, giải thích zùm đệ lun với
    Lỗi của bạn đâu ?

  6. #6
    Ngày gia nhập
    02 2008
    Bài viết
    21

    Mặc định Tìm ƯCLN & BCNN của số tự nhiên

    thuật toán đơn giản và chính xác nề
    ........
    While (a khác b){
    if (a>b)
    a=a-b
    else
    b=b-a
    }
    uscln=a;
    }

  7. #7
    Ngày gia nhập
    12 2007
    Nơi ở
    giữa thiên đường và địa ngục
    Bài viết
    91

    hơ,ngừoi ta đang hỏi cho n số mà chứ có phải hai số đâu
    mình nghĩ thế này này :cứ tìm UCLN của 2 số một rồi lại tiếp tục tìm UCLN của các UCLN vừa tìm dc ở lần 1 thế nào chả ra
    VD:tin UCLN của 20,10,30,5
    tim UCLN của 20 và 10 là 10
    UCLN của 30 và 5 la 5
    UCLN cua 10 và 5 la 5
    =>UCLN cua chúng là 5
    mới có ý tuong con code để mai viết đang ăn jo
    Tinh Quái,

    Vâng, là Chjp Xinh. Đanh đá và điêu ngoa
    .

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

    Code:
    #include<stdio.h>
    #include<conio.h>
    #include<math.h>
    int ucln(int a,int b)
    {
    	if(b=0) return a;
    		return ucln(b,a%b);
    }
    main()
    {
      int a[10],i,n,uc,bc;
    	printf("n= ");scanf("%d",&n);
    	for(i=0;i<n;i++){
    		printf("a[%d]= ",i);scanf("%d",&a[i]);
    	}
    	uc=ucln(a[0],a[1]);
    	
    	for(i=2;i<n;i++) uc=ucln(uc,a[i]);
    	printf("UCLN = %d",uc);
      getch();
    }
    cái dòng đỏ là cái gì thế trời :|, kô hiểu 1 cái gì cả (lần đầu tui cũng mới thấy "b=0" , sửa lại chỗ đó thế này là ok nè
    Code:
    int ucln(int a,int b)
    {
    	if(a == b) 
    		return b;
    	if (a > b)
    		return ucln (a - b, b);
    	return ucln(a, b - a);
    }
    , mới "lon ton" vào C++ nên viết thử = C++ thử cho quen
    Code:
    #include<iostream>
    
    using std::cout;
    using std::cin;
    
    int ucln(int a,int b)
    {
    	if(a == b) 
    		return b;
    	if (a > b)
    		return ucln (a - b, b);
    	return ucln(a, b - a);
    }
    void main()
    {
    	int a[10],i,n,uc,bc;
    	cout << "n= ";
    	cin >> n;
    	for(i=0;i<n;i++){
    		cout << "Nhap so thu "<<i+1<<":";
    		cin >> a[i];
    	}
    	uc=ucln(a[0],a[1]);
    	
    	for(i=2;i<n;i++) {
    		uc=ucln(uc,a[i]);
    	}
    	cout << "UCLN = "<<uc<<"";
    }
    hơ,ngừoi ta đang hỏi cho n số mà chứ có phải hai số đâu
    mình nghĩ thế này này :cứ tìm UCLN của 2 số một rồi lại tiếp tục tìm UCLN của các UCLN vừa tìm dc ở lần 1 thế nào chả ra
    VD:tin UCLN của 20,10,30,5
    tim UCLN của 20 và 10 là 10
    UCLN của 30 và 5 la 5
    UCLN cua 10 và 5 la 5
    =>UCLN cua chúng là 5
    mới có ý tuong con code để mai viết đang ăn jo
    ăn nhiều wa' coi chừng béo ú đấy nhé

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

    C++ Code:
    1. #include <stdio.h>
    2. #include <conio.h>
    3.  
    4. int gcd(int a, int b)
    5.   {
    6.   if (b==0) return a;
    7.   return gcd(b,a%b);
    8.   }
    9. main()
    10. {
    11. int a, b;
    12. printf("a:");
    13. scanf("%d", &a);
    14. printf("b:");
    15. scanf("%d", &b);
    16. printf("UCLN cua %d va %d la %d", a,b,gcd(a,b));
    17. printf("\nBCNN cua %d va %d la %d", a,b,a*b/gcd(a,b));
    18. getch();
    19. }

    ---------
    Lưu ý đặt code vào tag nha bạn. Bạn mới tham gia, nên đọc kỹ nội quy
    Đã được chỉnh sửa lần cuối bởi Forlorn_hope : 06-03-2008 lúc 07:03 PM.

  10. #10
    Ngày gia nhập
    07 2010
    Bài viết
    37

    #include <stdio.h>

    int UCLN(int a, int b)
    {
    if (b==0)
    return a;
    return UCLN(b,a%b);/*Thuat toan de quy tinh UCLN*/
    }

    int main() /*day la function chinh , carry out caculating UCLN of n numbers*/
    {
    int a[10];
    int n,i,k;
    printf("input how many number :");
    scanf("%d",&n);
    for(i=0;i<=n-1;i++)
    {
    printf("input the number %d:",i+1);
    scanf("%d",&a[i]);
    if(i>0)
    {
    k=UCLN(a[0],a[i]);
    a[0]=k;
    }
    }
    printf("UCLN of %d number is %d",n,a[0]);
    }
    Con cai BCNN ban lam tuong tu nhe

Các đề tài tương tự

  1. Bài tập C Tìm UCLN và BCNN của n số nguyên dương.
    Gửi bởi conrongchautien trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 16
    Bài viết cuối: 24-05-2011, 01:27 PM
  2. Kỹ thuật C++ Tính BCNN rồi tìm UCLN như thế nào???
    Gửi bởi BlackDiam0nd trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 17
    Bài viết cuối: 21-12-2010, 08:05 AM
  3. Bài tập C++ cách sử dụng hàm in ra các số tự nhiên chẵn trong n số tự nhiên đầu tiên
    Gửi bởi tictic trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 2
    Bài viết cuối: 17-04-2010, 01:17 PM
  4. Sửa giúp code Tìm BCNN của dãy số
    Gửi bởi mori trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 19-03-2009, 12:24 AM
  5. Tìm BCNN bằng đệ quy ?
    Gửi bởi tun_tun trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 9
    Bài viết cuối: 21-04-2008, 12:10 AM

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