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

Đề tài: tính tổng các số lẻ trong mảng 1 chiều với lập trình C?

  1. #1
    Ngày gia nhập
    01 2011
    Nơi ở
    Hà Nội
    Bài viết
    2

    Mặc định tính tổng các số lẻ trong mảng 1 chiều với lập trình C?

    Viết chương trình nhập một dãy N số nguyên, với N <=100 do người dùng nhập. Hiển thị dãy số vừa nhập. Tính tổng các số lẻ và in ra màn hình.
    Mình đã làm như thế này và không hiểu sai chỗ nào mà chương trình không tìm ra được các số lẻ trong mảng:
    C Code:
    1. #include <stdio.h>
    2. #include <conio.h>
    3.  
    4. void main()
    5. {
    6.   int i,n,dem;
    7.   float Ary[100];
    8.   float tong;
    9.  
    10.   clrscr();
    11.   //nhap cac phan tu cho mang
    12.   do
    13.   {
    14.   fflush(stdin);
    15.     printf("\nBan muon nhap bao nhieu phan tu (<100):");
    16.     scanf("%d", &n);
    17.   }
    18.   while( n<=0 || n>10 );
    19.  
    20.   for(i=0; i<n;i++)
    21.   {
    22.      printf("Phan tu thu %d:", i+1);
    23.      scanf("%f", &Ary[i]);
    24.   }
    25.  
    26.   //hien thi cac phan tu cua mang
    27.   printf("\nCac phan tu ban da nhap la:\n");
    28.   for(i=0; i<n; i++)
    29.   {
    30.     printf("%5.2f", Ary[i]);
    31.  
    32.   }
    33.  
    34.   //tinh tong cua cac so le
    35.   tong =0;
    36.   dem=0 ;
    37.   for(i=0; i<n; i++)
    38.   {
    39.  
    40.      if(i%2==1)
    41.      {
    42.     tong += Ary[i];
    43.     dem++;
    44.  
    45.     }
    46.  
    47.  
    48.   }
    49.   printf("\n Tong %d so le da nhap la: %5.2f", dem, tong);
    50.   getch();
    51.  
    52. }

    Các bạn giúp mình với.
    Đã được chỉnh sửa lần cuối bởi peterdrew : 19-01-2011 lúc 08:32 PM. Lý do: Đặt code vào thẻ!

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

    C++ Code:
    1. #include "iostream"
    2.  
    3. int main()
    4.  
    5. {
    6.     int i,n,dem;
    7.     int tong;
    8.     int array[100];
    9.     while (true)
    10.     {
    11.         std::cout << "Nhap so phan tu cho mang ( n nho hon 100) : ";
    12.         std::cin >> n;
    13.         if (n <= 100) break;
    14.         std::cout << "Nhap lai so phan tu nho hon 100 " << "\n";
    15.     }
    16.     dem = 0;
    17.     for (i = 1;i <= n;i++)
    18.     {
    19.         std::cout << "Nhap phan tu thu " << i <<": ";
    20.         std::cin >> array[i];
    21.         std::cout << "\n";
    22.     }
    23.     for (i = 1;i <= n;i++)
    24.     {
    25.         if (array[i]%2 == 1)
    26.             dem += 1;
    27.     }
    28.     std::cout << "So cac so le la : "<<dem << "\n";
    29.     return 0;
    30. }

    Mình làm thế này
    Đã được chỉnh sửa lần cuối bởi kyo_pyro : 19-01-2011 lúc 07:42 PM.

  3. #3
    Ngày gia nhập
    12 2010
    Nơi ở
    Mây
    Bài viết
    268

    Bạn sai điều kiện tìm số lẻ
    C Code:
    1. if(i%2==1) // i là chỉ số phần tử trong mảng chứ không phải phần tử của mảng
    2. {}
    - Lêu lêu

  4. #4
    Ngày gia nhập
    09 2010
    Nơi ở
    Hà Nội
    Bài viết
    381

    code tính tổng số lẻ trong mảng:
    C Code:
    1. #include<stdio.h>
    2. #include<stdlib.h>
    3. #include<conio.h>
    4. #include<math.h>
    5.  
    6. int main ()
    7. {
    8.     clrscr();
    9.     int N, i;
    10.     int* a = NULL;
    11.     long SUM = 0;
    12.     printf("\n Nhap vao N:");
    13.     scanf("%d", &N);
    14.  
    15.     a = (int*)malloc(N*sizeof(int));
    16.     for(i = 0; i < N; i++)
    17.     {
    18.         printf("\n Nhap phan tu thu %d: ", i);
    19.         scanf("%d", &a[i]);
    20.         if(a[i] % 2 == 1)
    21.         SUM += a[i];
    22.     }
    23.     for (i = 0; i < N; i++)
    24.     {
    25.         printf("%d        ", a[i]);
    26.     }
    27.     printf("\n SUM = %ld", SUM);
    28.     free(a);
    29.     getch();
    30.     return 0;
    31. }

    skype: hvphu2010
    Yahoo: hvphu2010
    Sdt: 0129 609 4567

  5. #5
    Ngày gia nhập
    10 2010
    Nơi ở
    Hà Nội - Việt Nam
    Bài viết
    22

    Quan trọng là
    sửa
    PHP Code:
    if(i%2==1
    thành
    PHP Code:
     if(Ary[i]%2==1

  6. #6
    Ngày gia nhập
    01 2011
    Nơi ở
    Hà Nội
    Bài viết
    2

    Mặc định tính tổng các số lẻ trong mảng 1 chiều với lập trình C?

    tks các bạn nhiều nhiều :X

  7. #7
    Ngày gia nhập
    03 2011
    Nơi ở
    Hà Nội
    Bài viết
    88

    bạn sai ở câu lệnh if(i%2==0) ở đây i chỉ là vị trí thôi thay 'i' bằng a[i] mới đúng với lại bài này chỉ nêu tính tổng thôi đâu cần đếm số phần tử lẻ đâu nên không cần phải khai biến đếm

    C Code:
    1. #include<conio.h>
    2. #include<stdio.h>
    3. void main()
    4. {
    5.   int i,n,a[10],tong;
    6.   clrscr();
    7.   printf("\n nhap n=");
    8.   scanf("%d",&n);
    9.   for(i=0;i<n;i++)
    10.   {
    11.     printf("\n a[%d]",i);
    12.     scanf("%d",&a[i]);
    13.    }
    14.   for(i=0;i<n;i++)
    15.     printf("%3d",a[i]);
    16.   printf("\n");
    17.   tong=0;
    18.   for(i=0;i<n;i++)
    19.     if(a[i]%2!=0)
    20.       tong=tong+a[i];
    21.    printf("tong cac so le trong day la %d",tong);
    22.    getch();
    23.  
    24. }

    đây là code của mình, bạn thử xem cách này giống của bạn đó

    không nếu sửa if(a[i]%2==1) thì sẽ chạy lỗi đó mình đã thử rồi mà
    Đã được chỉnh sửa lần cuối bởi fithou91192 : 09-03-2011 lúc 11:15 PM. Lý do: làm liền các bài viết spam

  8. #8
    Ngày gia nhập
    11 2010
    Nơi ở
    Black Hole
    Bài viết
    826

    Trích dẫn Nguyên bản được gửi bởi fithou91192 Xem bài viết
    không nếu sửa if(a[i]%2=1) thì sẽ chạy lỗi đó mình đã thử rồi mà
    lỗi chắc luôn
    if(a[i]%2=1) cái này ko lỗi mới lạ

  9. #9
    Ngày gia nhập
    03 2011
    Nơi ở
    Hà Nội
    Bài viết
    88

    ok anh, em nhầm nó phải thế này if(a[i]%2==1)
    Đã được chỉnh sửa lần cuối bởi fithou91192 : 09-03-2011 lúc 11:14 PM.

  10. #10
    Ngày gia nhập
    12 2012
    Nơi ở
    TP.HCM
    Bài viết
    1

    sao ko thay ai viet code theo chuong trinh con het vay?

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

  1. Mảng 2 chiều vào trong hàm bị chuyển thành mảng 2 chiều , tại sao ???
    Gửi bởi kwideur trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 4
    Bài viết cuối: 06-07-2013, 08:35 PM
  2. Trả lời: 2
    Bài viết cuối: 21-04-2013, 09:46 AM
  3. Lỗi: bố cục trang web tự tăng theo chiều ngang khi chiều cao thay đổi
    Gửi bởi tuanngocpt trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 2
    Bài viết cuối: 16-03-2013, 11:25 PM
  4. Trả lời: 1
    Bài viết cuối: 28-04-2012, 09:43 PM
  5. Trả lời: 0
    Bài viết cuối: 04-11-2011, 03:38 PM

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