Lỗi hàm con hay thuật toán?

Không rõ sai ở đâu, in ra mảng c đều lỗi cả, các bác check giúp mình với.

#include<iostream>

using namespace std;

bool kiemtraSo(int s, int t, int c[20]){
    for(int i=t-1;i>=0;i--){
        if(s==c[i]){
            return false;
            break;
        }
    }
    return true;
}

int main(){
    int n;
    cin >> n;
    int a[20];
    for(int i=0;i<n;i++){
        cin >> a[i];
    }

    int c[20];
    c[0]=a[0];
    int t=1;
    for(int i=1;i<n;i++){
        bool kiemtra=kiemtraSo(a[i],t,c);
        if(kiemtra==true){
            c[t]==a[i];
            t++;
        }
    }

    for(int i=0;i<t;i++){
        cout << c[i] << " ";
    }
}
  1. Đề bài là gì?
  2. Bạn input gì? Kết quả mong muốn là gì? Kết quả thực tế là gì?

Dòng này để làm gì?

Hàm này dùng để làm gì?

2 Likes

Cho một mảng, kq đưa về một mảng khác với dãy số mới ko trùng lặp
ex:
3 3 4 5 2 3 5
-> 3 4 5 2
a[] là mảng ban đầu c[] là mảng kq
Hàm kiemtraSo là xét trùng lặp, nếu nó đã đc đưa vào trong mảng c[] thì loại, ko thì tiếp tục lưu vào

câu trả lời đã có ở trên rồi đó, chỗ này là gán mà bị dư dấu
c[t]==a[i];

lần sau bạn post bài bạn nên post rõ ràng hơn

3 Likes

uk nhỉ. = viết thành == :smile: nửa buổi chiều đi tong

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?