01/10/2018, 00:18

Hỏi về tim kiếm trên mảng 1 chiều

e code bài này về mảng tìm kiếm trong mảng 1 chiều,nhưng kết quả luôn ra là k tìm thấy phần tử trong mảng,ai giải thích giúp e được không ạ!!!

#include<iostream>
#include<conio.h>
using namespace std;
void nhapmang(int a[],int &n);
void hienmang(int a[],int n);
bool timkiem(int a[],int n,int x);
int tong(int a[],int n);

void nhapmang(int a[],int &n)
{
    do{
        cout<<"nhap so phan tu trong mang : ";
        cin>>n;
        if(n<0||n>30)
            cout<<"nhap lai
";
    }
    while(n<0||n>30);
    for(int i=0;i<n;i++)
    {
        cout<<"phan tu thu "<<i<<"trong mang : ";
        cin>>a[i];
    }
}

void hienmang(int a[],int n)
{
    for(int i=0;i<n;i++)
        cout<<a[i]<<"  ";
}
int tong(int a[],int n)
{
    int s=0;
    for(int i=0;i<n;i++)
    {
        s=s+a[i];
    }
    return s;
}
bool timkiem(int a[],int n,int x)
{
    for(int i=0;i<n;i++)
    {
        if(a[i]==x)
            {
              return true;
            }

    }
    return false;
}
int main()
{
    int n;

    int a[30];

    nhapmang(a,n);
    cout<<"hien mang :
";
    hienmang(a,n);
    //cout<<"tong tat ca chu so co trong mang la :"<<tong(a,n);
    int x;
    bool check = timkiem(a,n,x);
    cout<<"nhap phan tu can tim kiem :
";//goi x la phan tu can tim kiem
    cin>>x;

    if(check == true)
    {
        cout<<"phan tu "<<x<<" co trong mang";
    }
    else
        {
            cout<<"phan tu "<<x<<" khong co trong mang";
        }
    getch();
}

Người bí ẩn viết 02:23 ngày 01/10/2018
    int x;
    bool check = timkiem(a,n,x);
    cout << "nhap phan tu can tim kiem :\n";//goi x la phan tu can tim kiem
    cin >> x;

Bỏ cái dòng bool check = timkiem(a,n,x); xuống dưới 2 dòng coutcin nhé

Bài liên quan
0