Trang 4 trên tổng số 4 Đầu tiênĐầu tiên ... 234
Từ 31 tới 40 trên tổng số 40 kết quả

Đề tài: thắc mắc cấu trúc vòng lặp for, do-while, while

  1. #31
    Ngày gia nhập
    08 2010
    Bài viết
    89

    Mặc định thắc mắc cấu trúc vòng lặp for, do-while, while

    Trích dẫn Nguyên bản được gửi bởi hunterkhanh Xem bài viết
    ah đương nhiên là mình chấp nhận kết quả của số 0! nhưng cái mình không hiểu !
    tại sao {12, 5, 1, 9, 10} khi đó max tìm được là 12 với :
    C Code:
    1. int max_array(int a[],int n)
    2. {
    3.    int i;
    4.    int max=a[0];
    5.    for(i=0;i<n;i++)
    6.        {
    7.            if(a[i]%5==0 && a[i]>max)
    8.            max=a[i];
    9.        }
    10.    return max;
    11. }
    cái mình không hiểu chính là chỗ này!
    chắc là bạn mới học LT nhỉ? OK, tớ giải thích cho bạn nhá:
    Ban đầu bạn gán max=a[0]; mảng đầu vào như trên thì max=12
    sau đó vòng lặp for thực hiện và không có i nào mà lệnh if đúng cả, như thế max là bao nhiêu???? Hehe, nó là 12 chứ còn gì nữa.

  2. #32
    Ngày gia nhập
    08 2010
    Bài viết
    89

    Trích dẫn Nguyên bản được gửi bởi Mandy Xem bài viết
    C++ Code:
    1. // asd.cpp : Defines the entry point for the console application.
    2. //
    3.  
    4. #include "stdafx.h"
    5. #include <iostream>
    6. #include<stdio.h>
    7. #include<conio.h>
    8.  
    9. using namespace std;
    10.  
    11. int max_array(int a[],int n)
    12. {
    13.     int i;
    14.     int max=a[0];
    15.     for(i=0;i<n;i++)
    16.     {
    17.         if(a[i]%5==0 && a[i]>max)max=a[i];
    18.     }
    19.     return max;
    20. }
    21.  
    22. void main()
    23. {
    24.     int a[1000];
    25.     int i=0;
    26.     printf("Nhap day\n");
    27.     do
    28.     {
    29.         scanf("%d",&a[i]);
    30.         i++;
    31.     }
    32.     while(a[i-1]!=0);
    33.     int j=max_array(a,i);
    34.     if(j==0)
    35.     {
    36.     printf("0 So lon nhat chia het cho 5 trong mang ");
    37.     }
    38.     else
    39.     printf("So lon nhat chia het cho 5 trong mang la:%d\n",j);
    40.     getch();
    41. }


    Mình vừa chạy thử ,kết quả cho ra chính xác,Bạn test lại xem sao?
    Tớ đã bảo không đúng mà. Bạn nhập 1, 2, 3, 4, 0 cho tớ xem nào.

  3. #33
    Ngày gia nhập
    08 2010
    Bài viết
    41

    Click vào hình ảnh để lấy hình ảnh lớn

Tên:		Untitled.jpg
Lần xem:	4
Size:		233.9 KB
ID:		5099
    Click vào hình ảnh để lấy hình ảnh lớn

Tên:		Untitled2.jpg
Lần xem:	4
Size:		196.7 KB
ID:		5101


    asd.cpp


    mình chụp hình cho bạn xem.

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

    C Code:
    1. #include<stdio.h>
    2. #include<conio.h>
    3. int max_array(int a[],int n)
    4. {
    5. int i;
    6. int max=a[0];
    7. for(i=0;i<n;i++)
    8. {
    9. if(a[i]%5==0 && a[i]>max)max=a[i];
    10. }
    11. return max;
    12. }
    13. int main()
    14. {
    15. int a[1000];
    16. int i=0;
    17. printf("Nhap day\n");
    18. do
    19. scanf("%d",&a[i++]);
    20. while(a[i-1]!=0);
    21. printf("So lon nhat chia het cho 5 trong mang la:%d\n",max_array(a,i));
    22. getch();
    23. }
    cám ơn bạn!đã cho mình bài làm của bạn!
    cái mình thực sự không hiểu là tại sao ,tại sao và tại sao là với code trên thì trong những số 12,5,1,9,10 kết quả lại ra 12 !ai đó giải thích giùm mình đc không!

  5. #35
    Ngày gia nhập
    08 2010
    Bài viết
    41

    bạn xem hình mình test ở bài viết trên với input : 1,5,12,10,7,0
    out là 10.Chính xác

  6. #36
    Ngày gia nhập
    12 2010
    Nơi ở
    Hà Nội
    Bài viết
    60

    Mặc định thắc mắc cấu trúc vòng lặp for, do-while, while

    Trích dẫn Nguyên bản được gửi bởi Mandy Xem bài viết
    Click vào hình ảnh để lấy hình ảnh lớn

Tên:		Untitled.jpg
Lần xem:	4
Size:		233.9 KB
ID:		5099
    Click vào hình ảnh để lấy hình ảnh lớn

Tên:		Untitled2.jpg
Lần xem:	4
Size:		196.7 KB
ID:		5101


    asd.cpp


    mình chụp hình cho bạn xem.
    còn đây là hình chụp của mình:
    Attached Thumbnails Attached Thumbnails 2.png   Untitled.png  
    Đã được chỉnh sửa lần cuối bởi hunterkhanh : 25-02-2011 lúc 12:01 AM.

  7. #37
    Ngày gia nhập
    08 2010
    Bài viết
    41

    bạn đã rebuild trước khu run lại lần nữa chựa ạ?
    Nếu bạn chưa rebild thì code được được biên dịch đâu.
    Nãy mình có sữa max=0 quà quên ghi lên.code chính xác là đây.Nhớ rebuild
    C++ Code:
    1. // asd.cpp : Defines the entry point for the console application.
    2. //
    3.  
    4. #include "stdafx.h"
    5. #include <iostream>
    6. #include<stdio.h>
    7. #include<conio.h>
    8.  
    9. using namespace std;
    10.  
    11. int max_array(int a[],int n)
    12. {
    13.     int i;
    14.     int max=0;
    15.     for(i=0;i<n;i++)
    16.     {
    17.         if(a[i]%5==0 && a[i]>max)max=a[i];
    18.     }
    19.     return max;
    20. }
    21.  
    22. void main()
    23. {
    24.     int a[1000];
    25.     int i=0;
    26.     printf("Nhap day\n");
    27.     do
    28.     {
    29.         scanf("%d",&a[i]);
    30.         i++;
    31.     }
    32.     while(a[i-1]!=0);
    33.     int j=max_array(a,i);
    34.     if(j==0)
    35.     {
    36.     printf("0 So lon nhat chia het cho 5 trong mang ");
    37.     }
    38.     else
    39.     printf("So lon nhat chia het cho 5 trong mang la:%d\n",j);
    40.     getch();
    41. }

  8. #38
    Ngày gia nhập
    08 2010
    Bài viết
    89

    Trích dẫn Nguyên bản được gửi bởi Mandy Xem bài viết
    bạn đã rebuild trước khu run lại lần nữa chựa ạ?
    Nếu bạn chưa rebild thì code được được biên dịch đâu.
    Nãy mình có sữa max=0 quà quên ghi lên.code chính xác là đây.Nhớ rebuild
    C++ Code:
    1. // asd.cpp : Defines the entry point for the console application.
    2. //
    3.  
    4. #include "stdafx.h"
    5. #include <iostream>
    6. #include<stdio.h>
    7. #include<conio.h>
    8.  
    9. using namespace std;
    10.  
    11. int max_array(int a[],int n)
    12. {
    13.     int i;
    14.     int max=0;
    15.     for(i=0;i<n;i++)
    16.     {
    17.         if(a[i]%5==0 && a[i]>max)max=a[i];
    18.     }
    19.     return max;
    20. }
    21.  
    22. void main()
    23. {
    24.     int a[1000];
    25.     int i=0;
    26.     printf("Nhap day\n");
    27.     do
    28.     {
    29.         scanf("%d",&a[i]);
    30.         i++;
    31.     }
    32.     while(a[i-1]!=0);
    33.     int j=max_array(a,i);
    34.     if(j==0)
    35.     {
    36.     printf("0 So lon nhat chia het cho 5 trong mang ");
    37.     }
    38.     else
    39.     printf("So lon nhat chia het cho 5 trong mang la:%d\n",j);
    40.     getch();
    41. }
    Hiển nhiên nếu bạn khởi tạo ban đầu max=0 thì ok rồi.

  9. #39
    Ngày gia nhập
    08 2010
    Bài viết
    89

    Trích dẫn Nguyên bản được gửi bởi hunterkhanh Xem bài viết
    C Code:
    1. #include<stdio.h>
    2. #include<conio.h>
    3. int max_array(int a[],int n)
    4. {
    5. int i;
    6. int max=a[0];
    7. for(i=0;i<n;i++)
    8. {
    9. if(a[i]%5==0 && a[i]>max)max=a[i];
    10. }
    11. return max;
    12. }
    13. int main()
    14. {
    15. int a[1000];
    16. int i=0;
    17. printf("Nhap day\n");
    18. do
    19. scanf("%d",&a[i++]);
    20. while(a[i-1]!=0);
    21. printf("So lon nhat chia het cho 5 trong mang la:%d\n",max_array(a,i));
    22. getch();
    23. }
    cám ơn bạn!đã cho mình bài làm của bạn!
    cái mình thực sự không hiểu là tại sao ,tại sao và tại sao là với code trên thì trong những số 12,5,1,9,10 kết quả lại ra 12 !ai đó giải thích giùm mình đc không!
    Tớ đã giải thích cho bạn rồi mà. Bộ dữ liêu trên với bộ dữ liệu tớ giải thích có khác nhau đâu.

  10. #40
    Ngày gia nhập
    12 2010
    Nơi ở
    Hà Nội
    Bài viết
    60

    Red face đã hiểu rõ nguyên nhân!thanks cả nhà!

    ko biết nói gì ơn ngoài hai chữ Cảm ơn

Trang 4 trên tổng số 4 Đầu tiênĐầu tiên ... 234

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

  1. Bài tập C nhờ các bác giúp dùm bài vòng lặp for này nói thật là thằng em bí quá rồi=.="
    Gửi bởi yaibakakasa trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 5
    Bài viết cuối: 02-11-2013, 11:49 PM
  2. Tiến Minh chiến thắng trước tay vợt số 10 thế giới ngay vòng đầu
    Gửi bởi tungyeuc trong diễn đàn Giải trí - Thư giãn
    Trả lời: 0
    Bài viết cuối: 18-09-2013, 12:30 PM
  3. Kỹ thuật C Thắc mắc cấu trúc vòng lặp while
    Gửi bởi darkboys trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 1
    Bài viết cuối: 24-07-2013, 11:42 PM
  4. Mã nguồn C Lỗi Lỗi chuyển đổi các cấu trúc điều khiển về vòng lặp while
    Gửi bởi sky_fly.ptit trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 4
    Bài viết cuối: 28-06-2013, 08:44 PM
  5. cấu trúc bảng băm là cấu trúc như thế nào?
    Gửi bởi minh_quang1202 trong diễn đàn Thắc mắc lập trình C/C++/C++0x
    Trả lời: 1
    Bài viết cuối: 06-01-2011, 07:03 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