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

Đề tài: C++

  1. #1
    Ngày gia nhập
    09 2018
    Bài viết
    0

    Mặc định C++

    Ai giúp em về phần này với chỉ em cách trình bày thuật toán theo phương pháp liệt kê.Cho 1 dãy số N phần tử.Nhập vào K.Kiểm tra K có xuất hiện trong dãy không?Nếu có thì K xuất hiện bao nhiêu lần ở những vị trí nào?(Giúp em viết bằng phương pháp liệt kê thôi ạn em không biết viết phần này) cần gấp ạ

  2. #2
    Ngày gia nhập
    08 2017
    Bài viết
    1,658

    Giả dụ
    Code:
    	10 phần tử
    	arr = {0, 1, 2, 1, 3, 1, 4, 1, 5, 1}
    	Nhập K = 1
    thì xuất ra như thế nào ? Tôi hỏi đây, nói về định dạng xuất.

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

    #include <stdio.h>

    int dayso[] = {1, 2, 3, 1, 2, 3, 1, 2, 3};
    int i, k, n;

    int main(){
    printf("Nhap k:");
    scanf("%d", &k);
    for(i == 0; i < sizeof(dayso)/4; i ++){
    if(k == dayso[i]){
    n++;
    printf("Lan = %d, Vi Tri = %d \n", n, i+1);
    }
    }
    }
    Đã được chỉnh sửa lần cuối bởi tkdlbhvn : 12-09-2018 lúc 03:11 AM.

  4. #4
    Ngày gia nhập
    02 2014
    Nơi ở
    TP.HCM
    Bài viết
    857

    Nếu viết như tkdlbhvn thì:
    _ Phải khởi tạo: n = 0;
    _ Thay i=0 cho i==0
    _ Thay sizeof(dayso)/4 bằng sizeof(dayso)/sizeof(int)

  5. #5
    Ngày gia nhập
    08 2017
    Bài viết
    1,658

    với dữ liiệu nhập vào:
    Code:
    n = 10, K = 1
    {0, 1, 2, 1, 3, 1, 4, 1, 5, 1}
    ===== số thứ tự tìm thấy x =====
        x     x     x     x     x 
     1  2  3  4  5  6  7  8  9  10
    Ý của bạn là xuất kết quả như thế này ?
    Lan = %d, Vi Tri = %d \n", n, i+1
    Code:
    Lần = 1, Vị trí = 2
    Lần = 2, Vị trí = 4
    Lần = 3, Vị trí = 6
    Lần = 4, Vị trí = 8
    Lần = 5, Vị trí = 10
    không cần viết ra bằng code.

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

    Mặc định C++

    Trích dẫn Nguyên bản được gửi bởi MHoang Xem bài viết
    Nếu viết như tkdlbhvn thì:
    _ Phải khởi tạo: n = 0;
    _ Thay i=0 cho i==0
    _ Thay sizeof(dayso)/4 bằng sizeof(dayso)/sizeof(int)
    1. n vốn dĩ bằng 0, bởi n khai báo như trên nó sẽ ngầm định bằng 0.
    2. ? chỗ này ko hiểu ý bạn? thay i = 0 ở đâu và i == 0 ở đâu.
    3. kiểu int = 4 byte nên 2 cái ko khác nhau mấy.

    - - - Nội dung đã được cập nhật ngày 13-09-2018 lúc 09:50 AM - - -

    Trích dẫn Nguyên bản được gửi bởi Monre Xem bài viết
    với dữ liiệu nhập vào:
    Code:
    n = 10, K = 1
    {0, 1, 2, 1, 3, 1, 4, 1, 5, 1}
    ===== số thứ tự tìm thấy x =====
        x     x     x     x     x 
     1  2  3  4  5  6  7  8  9  10
    Ý của bạn là xuất kết quả như thế này ?
    Lan = %d, Vi Tri = %d \n", n, i+1
    Code:
    Lần = 1, Vị trí = 2
    Lần = 2, Vị trí = 4
    Lần = 3, Vị trí = 6
    Lần = 4, Vị trí = 8
    Lần = 5, Vị trí = 10
    không cần viết ra bằng code.
    1. n ban đầu luôn = 0, n là biến lưu số lần của k xuất hiện. khi mỗi lần nó tìm thấy một dayso[i]=k nó sẽ tăng n lên 1 (n++), nên Lan = n;
    2. còn i, chỗ i + 1 vì là i ban đầu ta để bằng 0. Vi dụ: ta có 10 số trong mảng dayso, thì mảng dãy số sẽ bao gồm {dayso[0], dayso[1],..., dayso[9]}; do đó i phải bắt đầu từ 0. khi tìm đc dayso[i]=k thì lúc đấy vị trí = i + 1 bởi:
    d 1, 2, 3, 1, 2, 3, 1, 2, 3, 1
    i 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
    v 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

  7. #7
    Ngày gia nhập
    02 2014
    Nơi ở
    TP.HCM
    Bài viết
    857

    Trích dẫn Nguyên bản được gửi bởi tkdlbhvn Xem bài viết
    1. n vốn dĩ bằng 0, bởi n khai báo như trên nó sẽ ngầm định bằng 0.
    2. ? chỗ này ko hiểu ý bạn? thay i = 0 ở đâu và i == 0 ở đâu.
    3. kiểu int = 4 byte nên 2 cái ko khác nhau mấy.
    1. Bạn đúng - do mắt mũi tôi kèm nhèm. Biến đó là toàn cục. OK.
    2. Bạn sai, phải sửa : for(i == 0; i < sizeof(dayso)/4; i ++) thành for(i = 0; i < sizeof(dayso)/4; i ++)
    3. Chạy đúng trên máy của bạn nhưng có thể sai trên máy khác hoặc các thiết lập hệ thống khác. Không nên mặc định kích thước, nên dùng sizeof.

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

    2. à chỗ đó mình ghi nhầm. mình viết trên đây luôn chưa chạy thử nên ko để ý =)).
    3. cái này mình ko rõ mình ko dùng cái sizeof bh. tks bạn nhắc 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