Bài Tập Hàm-Số Hoàn Hảo

Thảo luận trong 'Thuật toán' bắt đầu bởi TruTra, 21 Tháng năm 2009.

  1. Offline

    TruTra

    • Friends

    • Oi vua giong face, vua giong yahoo= mang xha roi :D
    Số bài viết:
    499
    Đã được thích:
    200
    Điểm thành tích:
    140
    Số Hoàn Hảo

    Mã:
    #include<iostream.h>
    void sohh(int n)
    {
    int i,j,s;
    for(i=2;i<=n;i++)
    {
    s=1;
    for(j=2;j<=i/2;j++)
    if(i%j==0)
    s=s+j;
    if(s==i)
    cout<<i<<endl;
    }
    }
    void main()
    {
    int n;
    cout<<"Nhap so nguyen bat ky:";cin>>n;
    sohh(n);
    }
    /*
    Vi du: ta co ket qua 28 de co duoc:
    i=28 luc nay j chay tu 2->14
    i%j==0 thi s=s+1 nghia la:
    j=2, i=24 i%j thoa ->s=1+2
    j=3, i=24 thoa ->s=1+2+3
    j=4, i=24 thoa ->s=1+2+3+4
    j=5,i=24 Khong thoa.
    j=6 thoa ->s=1+2+3+4+6
    j=7 ko thoa
    j=8 thoa ->s=1+2+3+4+6+8=24 thoa nho vao
    dieu kien tiep theo(s==i)
    */
    Theo khuyến cáo của TruTra các bạn nên thêm break vào sau dong cout<<i;
    Theo Nguồn của chip.
    hongoctrienlongdao889 thích bài này.
  2. Offline

    TruTra

    • Friends

    • Oi vua giong face, vua giong yahoo= mang xha roi :D
    Số bài viết:
    499
    Đã được thích:
    200
    Điểm thành tích:
    140
    Bài này để tớ fit lai roai update sau
    longdao889 thích bài này.
  3. Offline

    LieuKyThien

    • Thành Viên Mới

    Số bài viết:
    79
    Đã được thích:
    49
    Điểm thành tích:
    0
    còn đây là bài về số hoàn hảo của mình làm bằng c:
    Mã:
    #include<conio.h>
    #include<stdio.h>
    void main()
    {
    	clrscr();
    	int i,t,j,n;
    	printf("Nhap so n: ");
    	scanf("%d",&n);
    	printf("Cac so hoan hao nho hon %d la:",n);
    	for(i=2;i<=n;i++)
    	 {
    	  t=1;
    	  for(j=2;j<=i/2;j++)
    		if(i%j==0)
    			t+=j;
    	  if(t==i)
    		printf(" %d",i);
    	 }
    	getch();
    }
    hongoctrienlongdao889 thích bài này.

Chia sẻ trang này

Advertising: Linux system admin | nukeviet | nukeviet 4 | Upload ảnh miễn phí