Từ 1 tới 7 trên tổng số 7 kết quả

Đề tài: tìm pt thỏa mãn đk

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

    Mặc định tìm pt thỏa mãn đk

    Các bác sửa lỗi đoạn này cho em

    Code:
    void timpt()
    { printf("\n cac pt 2k<a[k]<k!:");
      for(i=0;i<n;i++)
       if((a[i]>pow(2,i))&&(a[i]<gt(i)))
        printf("%5d",a[i]);
    }
    nó chả ra số ji cả?

  2. #2
    Ngày gia nhập
    03 2009
    Nơi ở
    Ở địa ngục
    Bài viết
    667

    Trích dẫn Nguyên bản được gửi bởi 7261819 Xem bài viết
    Các bác sửa lỗi đoạn này cho em

    Code:
    void timpt()
    { printf("\n cac pt 2k<a[k]<k!:");
      for(i=0;i<n;i++)
       if((a[i]>pow(2,i))&&(a[i]<gt(i)))
        printf("%5d",a[i]);
    }
    nó chả ra số ji cả?
    Đối vào của hàm là gì vậy bạn? hàm không đối, không biến thì nó lấy gì thực hiện?
    Mình xin sửa lại

    Code:
    void timpt(float a[],int n) //n là  số phần tử của mảng a
    { printf("\n cac pt 2k<a[k]<k!:");
      for(i=0;i<n;i++)
       if((a[i]>pow(2,i))&&(a[i]<gt(i)))
        printf("%5d",a[i]);
    }
    Đã được chỉnh sửa lần cuối bởi trungkien45 : 24-03-2009 lúc 10:15 PM.

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

    ah em dùng cách cho void main() ở cuối chứ ko làm kiểu của bác, nó dài hơn nên em ngại lắm

    Code:
    #include <stdio.h>
    #include <conio.h>
    
    int n,i,tg,j,a[100];
    
    .......
    
    void main()
    { nhapn();
      nhapmang();
      printf("\n in mang ");
      inmang();
      tong();
      innt();
      inhh();
      tonggt();
      timpt();
     dx();
      getch();
    }

  4. #4
    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 trungkien45 Xem bài viết
    Đối vào của hàm là gì vậy bạn? hàm không đối, không biến thì nó lấy gì thực hiện?
    Mình xin sửa lại

    Code:
    void timpt(float a[],int n) //n là  số phần tử của mảng a
    { printf("\n cac pt 2k<a[k]<k!:");
      for(i=0;i<n;i++)
       if((a[i]>pow(2,i))&&(a[i]<gt(i)))
        printf("%5d",a[i]);
    }

    sửa kiều gì thế ?? float *a mà lại %d cho a[i] .....

    đúng như mình đoán đây bạn ấy dùng biến toàn cục

    bạn post toàn bộ code nên đi chứ code của bạn ở bên trên mình ko thấy sai ngữ pháp chỗ nào cả
    Đã được chỉnh sửa lần cuối bởi langman : 24-03-2009 lúc 10:23 PM.
    ^_,^

    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

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

    úi bác langman ơi sao nó ra cả mảng vậy?

    Code:
    #include <stdio.h>
    #include <conio.h>
    
    int n,i,tg,j,a[100];
    
    void nhapn()
    { printf("\n  n:="); scanf("%d",&n); 
    }
    
    void nhapmang()
    { for(i=0;i<n;i++)
        { printf("\n a[%d]=",i); scanf("%d",&a[i]); }
    }
    
    void inmang()
    { for(i=0;i<n;i++)
      printf("%5d",a[i]);
    }
    
    void tong()
    { int s=0,i;
       for(i=0;i<n;i++)
        if((a[i]%2!=0)&&(i%3==0))
         s=s+a[i];
          printf("\n tong so le o vi tri chia het cho 3 la=%d",s);
    }
    
    int ktnt()
    {  int d=0;
        for(i=2;i<n;i++)
        if(n%i==0)d++; 
        if (d==2)return 1;
        else return 0;
    }
    void innt()
    {   printf("\n cac pt la so nguyen to:");
        for(i=0;i<n;i++)
        if(ktnt(a[i])==1)
        printf("%5d",a[i]);
    }
    
    int kthh()
    { int d=0;
       for(i=1;i<n;i++)
        if(n%i==0)d++;
        if(d==n) return 1;
        else return 0;
    }
    
    void inhh()
    { printf("\n cac pt la so hoan hao:");
      for(i=0;i<n;i++)
      if(kthh(a[i])==1) 
      printf("%5d",a[i]);
    }
    
    long gt()
    { long gt=1;
      for(i=1;i<=n;i++)
      (long)gt=gt*i;
      return gt;
    }
    
    void tonggt()
    { long s=0;
       for(i=0;i<n;i++) s=s+gt(a[i]);
       printf("\n tong gt s=%1d",s);
    }
    
    void timpt(i)
        {
            printf("\n cac pt 2k<a[k]<k!:");
            for(i=0;i<n;i++)
            if((a[i]>pow(2,i))&&(a[i]<gt(i)))
                printf("%5d",a[i]);
        } 
    
    /*int ktdx()
    {int kt=1;
      for(i=0;i<=(n/2);i++)
      { if(a[i]!=a[m-1-i])kt=0;
      return kt;
        }
    }
        
    void dx()
    { if (ktdx(a[i])==1) printf("\n mang dx");
      else printf("\n mang o dx");
    }
    */
    
    void main()
    { nhapn();
      nhapmang();
      printf("\n in mang ");
      inmang();
      tong();
      innt();
      inhh();
      tonggt();
      timpt();
     
      getch();
    }
    các bác đừng choáng, đây là tất cả nhg jì em làm được.

    các bác ơi hôm nay đừng ngủ quá sớm nhé.
    Đã được chỉnh sửa lần cuối bởi QuangHoang : 25-03-2009 lúc 12:05 AM.

  6. #6
    Ngày gia nhập
    02 2008
    Nơi ở
    Việt Nam
    Bài viết
    577

    Mặc định tìm pt thỏa mãn đk

    các bác đừng choáng, đây là tất cả nhg jì em làm được.
    Có gì đâu mà choáng, bạn nên học cách sử dụng đối số cho các hàm, trình bày code sáng hơn một chút nữa.

    Quay về phần đầu tiên bạn hỏi, không nên dùng pow, không cần làm thêm hàm tính giai thừa, thử hướng này xem.

    C Code:
    1. void timpt(i)
    2. {
    3.      long gt=1, p=1;
    4.      printf("\n cac pt 2k<a[k]<k!:");
    5.      i = 0;
    6.      while (i<n)
    7.      {
    8.            if((a[i]>p) && (a[i]<gt)) printf("%5d",a[i]);
    9.            i++;
    10.            gt *= i;
    11.            p *= 2;
    12.      }
    13. }

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

    em thử mãi sao ko in ra số nhỉ?

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