tÀI liệu này do mình tự làm, Bài tập mảng 1 chiều gồm có nhiều câu hỏi nhỏ đi kèm như nhập xuất mảng,tim max min sắp xếp mảng tìm số nguyên tố,hoàn thiện.Nó thuộc loại bài tập kinh điên mà khi nào học đến mảng chúng ta phải làm, tài liệu gồm có file pdf lời giải và file chương trình đi kèm.Rất cảm ơn các bạn đã quan tâm.
Trang 1Bài tập về mảng.
Câu hỏi:Cho một mảng có n phần tử nguyên hãy viết các hàm sau
1)Hàm nhập mảng
2)Hàm in mảng
3)Hàm tính tổng mảng
4)Hàm tìm phần tử có giá trị nhỏ nhất
5)Hàm sắp xếp mảng giảm dần
6)Hàm in ra các số nguyên tố trong mảng
7)Hàm in ra các số hoàn thiện trong mảng
Show code:
#include<iostream>
#include<conio.h>
#include<math.h>
using namespace std;
//Ham nhap so luong phan va gia tri tung phan tu trong mang
void Ham_nhap_mang(int ary[],int &n)
{
do{
cout<<"\nHay nhap so luong phan tu trong mang: ";
cin>>n;
if(n<0)
{
cout<<"\nBan nhap so luong phan tu trong mang khong hop le.";
}
}while(n<0);
//Nhap gia tri cac phan tu trong mang
for(int i=0;i<n;i++)
{
cout<<"\nHay nhap gia tri cho mang ary["<<i<<"]:";
cin>>ary[i];
}
}
//Ham xuat gia tri cac phan tu trong mang
void Ham_xuat_mang(int ary[],int n)
{
for(int i=0;i<n;i++)
{
cout<<ary[i] <<" ";
}
}
int Ham_tinh_tong_mang(int ary[],int n)
{
int total=0;
for(int i=0;i<n;i++)
{
total+=ary[i];
}
return total;
}
int Tim_min(int ary[],int n)
{
int min=ary[0];
int dem=0;
for(int i=0;i<n;i++)
{
if(ary[i]<min)
{
min=ary[i];
dem=i;
}
Trang 2return dem;
}
void Ham_in_so_nguyen_to_trong_mang(int ary[],int n)
{
int dem=0,i;
for( i=0;i<n;i++)
{
dem=0;
for(int j=2;j<=ary[i]/2;j++)
{
if(ary[i]%j==0) {
dem++;
} }
if(dem<=0&&ary[i]!=1)
{
cout<<ary[i]<<" ";
}
}
}
void Ham_sap_xep(int ary[] ,int n)
{
for(int i=0;i<n-1;i++)
{
for(int j=i+1;j<n;j++)
{
if(ary[i]<ary[j]) {
int temp=ary[i];
ary[i]=ary[j];
ary[j]=temp;
} }
}
}
void Ham_in_ra_so_hoan_thien(int ary[],int n)
{
int tong_uoc=0;
for(int i=0;i<n;i++)
{
tong_uoc=0;
for(int j=1;j<ary[i];j++)
{
if(ary[i]%j==0) {
tong_uoc+=j;
} }
if(tong_uoc==ary[i])
{
cout<<" "<<ary[i];
}
}
}
int main()
{
int n,ary[15],ary2[15];
Trang 3Ham_nhap_mang(ary,n);
cout<<endl<<endl<<"\n\t\tHAM_XUAT_MANG"<<endl<<endl<<endl;
cout<<"\nXuat mang: ";
Ham_xuat_mang(ary,n);
cout<<"\n\t\tHAM_TINH_TONG_MANG"<<endl<<endl;
int tong=Ham_tinh_tong_mang(ary,n);
cout<<endl<<"\nTong gia tri cac phan tu trong mang la:"<<tong;
cout<<endl<<endl<<"\n\t\tHAM_TIM_PHAN_TU_MIN_NHAT_TRONG_MANG"<<endl<<endl;
int Min=Tim_min(ary,n);
cout<<endl<<"\nPhan tu ary["<<Min<<"] la phan tu nho nhat trong mang."<<endl<<endl;
cout<<endl<<endl<<"\n\t\tHAM_SAP_XEP_GIAM_DAN_CAC_PHAN_TU_TRONG_MANG"<<endl<<endl;
Ham_sap_xep(ary ,n);
cout<<"\nHam sau khi sap xep la: ";
cout<<endl;
Ham_xuat_mang(ary,n);
cout<<endl<<endl<<"\n\t\tHAM_IN_RA_CAC_SO_NGUYEN_TO_TRONG_MANG"<<endl<<endl;
cout<<endl<<endl<<"Cac so nguyen to lan luot la: ";
Ham_in_so_nguyen_to_trong_mang(ary,n);
cout<<"\n\t\tHAM_IN_RA_CAC_SO_HOAN_THIEN_TRONG_MANG"<<endl<<endl;
cout<<endl<<endl<<"Cac so nguyen to lan luot la: "<<endl<<endl;
Ham_in_ra_so_hoan_thien(ary, n);
}