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ố 11 kết quả

Đề tài: Mọi người vào xem hộ mình đoạn code này sai ở đâu cái !

  1. #1
    No Avatar
    huytung0908 Khách

    Mặc định Mọi người vào xem hộ mình đoạn code này sai ở đâu cái !

    mình có đoạn code này dùng trong cấu trúc struct nhưng nó lại không cho ra kết quả mà mình tìm mãi ko biết sai ở đâu. Nhờ mọi test xem nó sai ở đâu nha
    C Code:
    1. #include <graphics.h>
    2. #include <stdio.h>
    3. #include <conio.h>
    4. #include <stdlib.h>
    5.  
    6.  struct  htcs
    7.    {
    8.       char so[100];
    9.       int x,y,r;
    10.       int data;
    11.  
    12.    };
    13.    htcs phantu[20],m[20],max,k;
    14. int tim_ngang()
    15. {
    16.    int n;
    17.    int i,j,dem=0;
    18.    for (i=0;i<n;i++)
    19.    {
    20.        printf("nhap phan tu thu %d:",i);scanf("%d",&phantu[i].data);
    21.    }
    22.    i=0;
    23.    while(i<n)
    24. {
    25.     k.data=1;
    26.     while( ( phantu[i].data==phantu[i+1].data )&& (i<n) )
    27. {
    28.     k.data++;
    29.     printf("%d ",phantu[i].data);
    30.     i++;
    31. };
    32. if (k.data>=1)
    33. {
    34.     printf("%d",phantu[i].data);
    35.     printf("\t :%d",k.data);
    36.     printf("\n");
    37.     if (k.data>1)
    38.     dem++;
    39.     m[i].data=k.data;
    40. }
    41.     i++;
    42. }
    43.     max.data=m[i].data;
    44.     for (i=0;i<n;i++)
    45. {
    46.     if(max.data<m[i].data)
    47.     max.data=m[i].data;
    48. }
    49.     printf("\n Trong day so co %d ngang:",dem);
    50.     printf("\n So ngang lon nhat trong day la :");
    51.     for (i=0;i<max.data;i++)
    52. {
    53.     printf(" %d ",phantu[i].data);
    54. }
    55.     return phantu[i].data;
    56. }
    Đã được chỉnh sửa lần cuối bởi huytung0908 : 13-12-2008 lúc 10:08 AM.

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

    hàm main đâu ????
    ^_,^

    Facebook : https://www.facebook.com/langmaninternet

    Bùi Tấn Quang

  3. #3
    No Avatar
    huytung0908 Khách

    hàm main đây nhưng ý emhỏi xem hàm tim_ngang của em như vậy đã đúng chưa thôj vì khi gọi hàm tim_ngang đó lại ko ra kết quả đúng.
    C Code:
    1. void main()
    2. {
    3.     int n;
    4.     tim_ngang();
    5.     getch();
    6. }

  4. #4
    Ngày gia nhập
    12 2007
    Bài viết
    54

    Trích dẫn Nguyên bản được gửi bởi huytung0908 Xem bài viết
    hàm main đây nhưng ý emhỏi xem hàm tim_ngang của em như vậy đã đúng chưa thôj vì khi gọi hàm tim_ngang đó lại ko ra kết quả đúng.
    C Code:
    1. void main()
    2. {
    3.     int n;
    4.     tim_ngang();
    5.     getch();
    6. }
    Hàm main của bạn viết sai rồi còn gì nữa mà kiểm tra tim_ngang() làm gì .
    hàm này trả về giá trị là int kia mà bạn .
    Sao bạn ko post luôn đề , đọc thế này ai biết tim_ngang() của bạn làm gì ??
    Rất mong được mọi người giúp đỡ :

    Kiến thức mình biết chỉ là hạt cát trên sa mạc

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

    C Code:
    1. int tim_ngang()
    2. {
    3.    int n;
    4.    int i,j,dem=0;
    5.    for (i=0;i<n;i++)
    6.    {
    7.        printf("nhap phan tu thu %d:",i);scanf("%d",&phantu[i].data);
    8.    }
    9.    i=0;
    10.    while(i<n)
    11. {
    12.     k.data=1;
    13.     while( ( phantu[i].data==phantu[i+1].data )&& (i<n) )
    14. {
    15.     k.data++;
    16.     printf("%d ",phantu[i].data);
    17.     i++;
    18. };
    Dấu ; ở cuối làm gì đó bạn ?
    Code của bạn trình bày chán quá, nếu có thể bạn đưa cả đầu bài lên tôi fix cho.

  6. #6
    No Avatar
    huytung0908 Khách

    Mặc định Mọi người vào xem hộ mình đoạn code này sai ở đâu cái !

    OK ! đây là đề bài của đoạn code của em nè mong các anh xem lại cho
    OK! mình đã vẽ được các số trong hình tròn rồi nhưng không biết cách đưa các phần tử trong hình tròn đấy vào 1 mảng để xử lý tiếp vì đề bài của mình nó yêu cầu như sau ko biết mình đưa nó vào mảng là đúng hay sai nữa mong các anh xem cho
    Đề bài: Trong một dãy số,các phần tử bằng nhau liên tiếp được gọi là một ngang trong dãy (để có một ngang tối thiểu phải có 2 phần tử liên tiếp bằng nhau).Độ dài của một ngang là các số phần tử của ngang đó.Cho dãy số nguyên gồm n phần tử (n thuộc [10-20])
    yêu cầu: Tạo chương trình xuất hiện 3 menu:
    1. In ngang
    2. Ghi ngang
    3. Hiện ngang
    Trong đó:
    1. In ngang: in lên màn hình tất cả các ngang có độ dài lớn nhất của dãy n phần tử đã cho. Ví dụ có 15 số nguyên sau :
    17 17 45 62 20 20 20 80 45 21 45 45 45 91
    Trong dãy có 3 ngang đó là 17 17 có độ dài là 2, tiếp theo là 20 20 có độ dài là 3 và cuối cùng là 45 45 có độ dài là 3. Sau khi nhập vào dãy như trên phải in ra trên màn hình như sau:
    20 20 20
    45 45 45
    C Code:
    1. #include <graphics.h>
    2. #include <stdio.h>
    3. #include <conio.h>
    4. #include <stdlib.h>
    5.  
    6.  struct  htcs
    7.    {
    8.       char so[100];
    9.       int x,y,r;
    10.       int data;
    11.  
    12.    };
    13.    htcs phantu[20],m[20],max,k;
    14.  
    15. void tim_ngang()
    16. {
    17.    int n;
    18.    int i,j,dem=0;
    19.    i=0;
    20.    while(i<n)
    21. {
    22. k.data=1;
    23. while( ( phantu[i].data==phantu[i+1].data )&& (i<n) )
    24. {
    25. k.data++;
    26. printf("%d ",phantu[i].data);
    27. i++;
    28. };
    29. if (k.data>=1)
    30. {
    31. printf("%d",phantu[i].data);
    32. printf("\t :%d",k.data);
    33. printf("\n");
    34. if (k.data>1)
    35. dem++;
    36. m[i].data=k.data;
    37. }
    38. i++;
    39. }
    40. max.data=m[i].data;
    41. for (i=0;i<n;i++)
    42. {
    43.   if(max.data<m[i].data)
    44.   max.data=m[i].data;
    45. }
    46. printf("\n Trong day so co %d ngang:",dem);
    47. printf("\n So ngang lon nhat trong day la :");
    48. for (i=0;i<max.data;i++)
    49. {
    50. printf(" %d ",phantu[i].data);
    51. }
    52.  
    53.  getch();
    54. }
    55. void main()
    56. {
    57.  
    58.    int n;
    59. for (i=0; i<n; i++)
    60. {
    61.     printf("nhap phantu[%d]=",i+1);scanf("%d",&phantu[i].data);
    62. }
    63. tim_ngang();
    64. getch();
    Đã được chỉnh sửa lần cuối bởi huytung0908 : 15-12-2008 lúc 08:36 PM.

  7. #7
    No Avatar
    huytung0908 Khách

    hjx sao không có ai giúp mình à , mình đang cần gấp ai giúp với.

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

    Mình chưa thử được vì mình không có biên dịch C for DOS nào, bạn thử xem thuật toán của cái này xem:

    C++ Code:
    1. #include <iostream>
    2. using namespace std;
    3.  
    4. void InNgang(int a[], int n)
    5. {
    6.     int tmp,count,i=0;
    7.     int b[2][20],o=0;
    8.     while (i<n)
    9.     {
    10.         tmp = a[i];count = 0;
    11.         while (tmp == a[i])
    12.         {
    13.             count ++;
    14.             i++;
    15.         }
    16.         b[0][o]=tmp;b[1][o]=count; o++;
    17.     }
    18.  
    19.     int max=b[1][0];
    20.     for (int j=1; j<o; j++)
    21.         if (max < b[1][j]) max=b[1][j];
    22.  
    23.     for (int j=0; j<o; j++)
    24.         if (max == b[1][j])
    25.         {
    26.             for(int k=0; k<max; k++) cout<< b[0][j] << "  ";
    27.             cout << endl;
    28.         }
    29. }
    30.  
    31. int main()
    32. {
    33.     int a[]={17, 17, 45, 62, 20, 20, 20, 80, 45, 21, 45, 45, 45, 91};
    34.     int n = 14;
    35.     InNgang(a,n);
    36. }

    Mình sẽ xem qua code của bạn có chỗ nào không ổn sẽ sửa.

  9. #9
    No Avatar
    huytung0908 Khách

    Cảm ơn anh nhiều sao bài của anh em thử chạy với C lại không được nó thông báo dòng lỗi sau đây "Fatal D:\BORLANDC\INCLUDE\IOSTREAM.H 19: Error directive: Must use C++ for the type iostream .
    Bài này phải chạy bằng C++ hả anh? Mà anh có thể giải thích rõ các bước được không ạ !
    Đã được chỉnh sửa lần cuối bởi huytung0908 : 15-12-2008 lúc 04:24 PM.

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

    Code trên là code C++
    Mình chỉ sửa phần tim_ngang() cho bạn thôi, các phần khác mình không test được nên không sửa được.
    Bạn đọc xem sao:
    C Code:
    1. void tim_ngang(int n)
    2. {
    3.     int i=0,j,dem=0;
    4.     int b[2][20],o=0;
    5.     while(i<n)
    6.     {
    7.         b[0][o]=phantu[i].data;dem=0;
    8.         while( ( b[0][o]==phantu[i].data ))
    9.         {
    10.             dem++;
    11.             i++;
    12.         }
    13.         b[1][o]=dem; o++;
    14.     }
    15.  
    16.     int count=0,max=b[1][0];
    17.     for(i=0; i<o; i++)
    18.     {
    19.         if (max < b[1][i]) max=b[1][i];
    20.         if (b[1][i]>1)
    21.         {
    22.             count++;
    23.             for(j=0; j<b[1][i]; j++) printf("%d  ",b[0][i]);
    24.             printf("\n");
    25.         }
    26.     }
    27.     printf(" - Co tat ca %d ngang.\n",count);
    28.     printf(" - Trong so do, cac ngang dai nhat la: \n");
    29.     for(i=0; i<o; i++)
    30.     {
    31.         if (max == b[1][i])
    32.         {
    33.             for(j=0; j<max; j++) printf("%d  ",b[0][i]);
    34.             printf("\n");
    35.         }
    36.     }
    37.  
    38.  
    39. // getch();
    40. }

    Bạn cố gắng truyền tham số cho chương trình con, để nó hoạt động độc lập, sau này sẽ dễ dàng dùng lại khi cần.

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

  1. Tại sao lại bỏ Store Proceduce nếu code theo hướng Code First trong MVC3
    Gửi bởi rogerminh2401 trong diễn đàn Thắc mắc lập trình ASP.NET
    Trả lời: 5
    Bài viết cuối: 02-11-2012, 08:22 PM
  2. Trả lời: 5
    Bài viết cuối: 27-04-2012, 07:51 PM
  3. compiler Warning: Unreachable code và chạy sai trong khi code đúng. Vì sao?
    Gửi bởi lovemoney trong diễn đàn Thảo luận, góp ý code C/C++ của bạn
    Trả lời: 19
    Bài viết cuối: 19-01-2012, 10:02 PM
  4. Bài tập C++ Nhập code và name sv vào in ra thì name in đúng nhưng code thì in ra cả 2 code lẫn name
    Gửi bởi spacy0212 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: 27-09-2011, 08:47 AM
  5. Code quản lý sinh viên bằng danh sách lối vòng. Giúp mình thay đổi code kế thừa?
    Gửi bởi caocanha trong diễn đàn Thảo luận, góp ý code C/C++ của bạn
    Trả lời: 6
    Bài viết cuối: 04-05-2009, 03:39 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