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
}
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>
#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;
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);
//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);
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");
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;
}
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;
}
#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: