Lập trình hàm Kiểm tra 1 phần tử có trong danh sách hay không

Thực hành: Kiểm tra 1 phần tử có trong danh sách hay không

Yêu cầu: Nhập một số bất kỳ và kiểm tra xem số đó có tồn tại trong danh sách hay không?

Chi tiết trên CodeLabs


Duration: 20

1.1      Công cụ:

Môi trường: Code::Blocks
Ngôn ngữ lập trình: C

1.2      Hướng dẫn chung

•Khai báo mảng
•Khai báo 1 biến
•Nhập từ bàn phím giá trị của mảng
•Nhập từ bàn phím giá trị của biến
•//Gọi hàm và trả về dạng Có / Không?
ketqua = CoPhanTuTrongMang(ds,n,socantim);
In ra Kết quả

Viết code của hàm:

bool CoPhanTuTrongMang(int ds[], int n, int socantim);

Hàm trả về kiểu bool CoPhanTuTrongMang()
{
    •Lần lượt duyệt qua các phần tử trong mảng
           •Nếu gặp 1 phần tử  = Phần tử cần kiểm tra thì à Trả ra là Tồn tại
    •Sau khi duyệt hết mà không có à Trả ra là Không tồn tại
}

1.3      THỰC HÀNH BƯỚC 1

Mở Code Blocks → New File → Empty file --> Lưu file đuôi .cpp

1.4      THỰC HÀNH BƯỚC 2 - Khai báo sử dụng thư viện

Khai báo sử dụng các thư viện
#include <conio.h>
#include <stdio.h>
#include <string.h>

1.5      THỰC HÀNH BƯỚC 3 - Khai báo biến

Khai báo biến và mảng sử dụng trong chương trình
int ds[10];
int n;
int socantim;
bool ketqua = false;

1.6      THỰC HÀNH BƯỚC 4 - Nhập dữ liệu


//Hien thong bao moi nguoi dung nhap
   printf("Nhap so luong phan tu:");
   //Nhap vao tu ban phim
   scanf("%d",&n);
   //In n ra
   //printf("n=%d\n",n);
   //Nhap cac phan tu trong mang
   for (int i = 0; i<n; i++)
   {
       //In ra loi huong dan nhap phan tu thu may
       printf("Nhap phan tu thu [%d]:",i+1);
       scanf("%d",&ds[i]);
   }
   printf("So can tim:");
   //Nhap vao tu ban phim
   scanf("%d",&socantim);

1.7      THỰC HÀNH BƯỚC 5 - Gọi hàm


Lần lượt duyệt qua các phần tử của mảng, kiểm tra xem có tìm thấy không?
Nếu có, sẽ in vị trí tìm thấy và đặt trạng thái biến tìm thấy bằng true
Sau khi kết thúc quá trình tìm kiếm, thực hiện in kết quả
ketqua = CoPhanTuTrongMang(ds,n,socantim);
 

1.8      In kết quả

Toàn bộ code như sau:
for (int i = 0;i<n;i++)
   {
       printf("ds[%d]=%d\n",i,ds[i]);
   }
   if (ketqua==true)
   {
       printf("Phan tu [%d] co trong mang da cho \n", socantim);
   }
   else printf("Khong tim tim thay phan tu [%d] trong mang");

1.9      Hàm Tìm 1 phần tử có trong mảng hay không?




bool CoPhanTuTrongMang(int ds[], int n, int socantim)
{
   for (int i = 0;i<n;i++)
   {
       if (ds[i]==socantim)
       {
           return true;
       }
   }
   //Den het roi ma khong co phan tu tuong ung thi return false
   return false;
}

1.10 Giao diện màn hình chạy thử

1.11 Toàn bộ code chương trình



#include <stdio.h>
#include <conio.h>
bool CoPhanTuTrongMang(int ds[], int n, int socantim);
int main()
{
   int ds[10];
   int n;
   int socantim;
   bool ketqua = false;
   //Hien thong bao moi nguoi dung nhap
   printf("Nhap so luong phan tu:");
   //Nhap vao tu ban phim
   scanf("%d",&n);
   //In n ra
   //printf("n=%d\n",n);
   //Nhap cac phan tu trong mang
   for (int i = 0; i<n; i++)
   {
       //In ra loi huong dan nhap phan tu thu may
       printf("Nhap phan tu thu [%d]:",i+1);
       scanf("%d",&ds[i]);
   }
   printf("So can tim:");
   //Nhap vao tu ban phim
   scanf("%d",&socantim);
   
   //goi ham
   ketqua = CoPhanTuTrongMang(ds,n,socantim);
   printf("Ket qua:\n");
   //In ra danh sach
   printf("Danh sach da nhap la:");
   for (int i = 0;i<n;i++)
   {
       printf("ds[%d]=%d\n",i,ds[i]);
   }
   if (ketqua==true)
   {
       printf("Phan tu [%d] co trong mang da cho \n", socantim);
   }
   else printf("Khong tim tim thay phan tu [%d] trong mang");


   getch();
}
bool CoPhanTuTrongMang(int ds[], int n, int socantim)
{
   for (int i = 0;i<n;i++)
   {
       if (ds[i]==socantim)
       {
           return true;
       }
   }
   //Den het roi ma khong co phan tu tuong ung thi return false
   return false;
}





No comments:

Powered by Blogger.