BAI 1 TÌM CHẴN MIN
#include<stdio.h>
#include<math.h>
//nhap mang mot chieu
void nhapmang(int a[],int &n)
{
printf("\n so phan tu cua mang la:");
scanf("%d",&n);
for(int i=0;i{
printf("\n phan thu thu [%d]: ",i);
scanf("%d",&a[i]);
}
}
// xuat mang mot chieu
void xuatmang (int a[], int n)
{
int i;
for (int i=0;iprintf("%5d",a[i]);
printf("\n\n");
}
//bai 1 tim so chan nho nhat trong mang
int minchan(int a[], int n)
{
int i,min,dem=0;
for(i=0;iif(a[i]%2==0)
{
dem++;
min=a[i];
}
if(dem==0)
printf("\n khong co so chan !\n\n");
else
{
for(i=0;i
if(a[i]%2==0&&a[i]
min=a[i];
printf("\n phan tu chan nho nhat trong mang: %2d \n\n",min);
}
return min;
}
int main()
{
int i,n, a[50];
nhapmang(a,n);
printf("\n\n mang vua nhap la:");
xuatmang(a,n);
minchan(a,n);
}
BÀI 2 TÌM NGUYÊN TỐ MAX
#include<stdio.h>
#include<conio.h>
void nhapmang(int a[],int &n)
{
printf("\n so phan tu cua mang: ");
scanf("%d",&n);
for(int i=0;i
{
printf("\n phan tu thu[%d]:",i);
scanf("%d",&a[i]);
}
}
void xuatmang (int a[], int n)
{
int i;
for(i=0;i
printf("%5d",a[i]);
printf("\n\n");
}
//kiem tra phan tu co phai nguyen to khong
int ktnt(int n)
{
int i, dem=0;
for(i=1;i<=n;i++)
if(n%i==0)
dem++;
if(dem==2)
return 1;
return 0;
}
//tim phan tu nguyen to lon nhat trong mang
void maxnt(int a[], int n)
{
int i, max, dem=0;
for(i=0;i
if(ktnt(a[i])==1)
{
dem++;
max=a[i];
}
if (dem==0) printf("\n\n phan tu khong co so nguyen to!");
else
{
for(i=0;i
if(ktnt(a[i])==1&&a[i]>max)
max=a[i];
printf("\n phan tu nguyen to lon nhat trong mang: %5d \n\n",max);
}
}
int main()
{
int i,n,a[50];
nhapmang(a,n);
printf("\n\n mang vua nhap la:");
xuatmang(a,n);
maxnt(a,n);
getch();
}
BAI 3 TÌM CHÍNH PHƯƠNG MAX
#include<stdio.h>
#include<math.h>
void nhapmang(int a[], int&n)
{
printf("\n nhap so phan tu cua mang: ");
scanf("%d",&n);
for( int i=0;i
{
printf("\n phan tu thu[%d]: ",i);
scanf("%d",&a[i]);
}
}
void xuatmang(int a[], int n)
{
int i;
for(i=0;i
printf("%5d",a[i]);
printf("\n\n");
}
//kiem tra phan tu co phai chinh phuong khong
int ktcp(int n)
{
int i;
for(i=1;i<=n;i++)
if(i*i==n)
return 1;
return 0;
}
//tim phan tu chinh phuong chan lon nhat
int maxcpc(int a[], int n)
{
int i, max, dem=0;
for(i=0;i
if(ktcp(a[i])==1&&a[i]%2==0)
{
dem++;
max=a[i];
}
if(dem==0) printf("\n mang khong co phan tu chinh phuong
chan!\n\n");
else
{
for(i=0;i
if(ktcp(a[i])==1&&a[i]>max&&a[i]%2==0)
max==a[i];
printf("\n phan tu chinh phuong can lon nhat trong
mang: %5d\n\n",max);
}
return max;
}
int main()
{
int i,n,a[50];
nhapmang(a,n);
printf("\n\n mang vua nhap la:");
xuatmang(a,n);
maxcpc(a,n);
}
BÀI 4 CHÍNH PHƯƠNG CHẴN MAX
#include<stdio.h>
#include<conio.h>
void nhapmang (int a[], int &n)
{
printf("\n nhap so luong phan tu: ");
scanf ("%d",&n);
for(int i=0;i
{
printf("\n phan tu thu [%d]: ",i);
scanf("%d",&a[i]);
}
}
void xuatmang(int a[], int n)
{
int i;
for(i=0;i
printf("%5d",a[i]);
printf("\n\n");
}
//kiem tra phan tu co phai chinh phuong khong
int ktcp(int n)
{
int i;
for (i=1;i<=n;i++)
if (i*i==n)
return 1;
return 0;
}
//tim chinh phuong chan max
int cpchanmax (int a[], int n)
{
int i,max, dem=0;
for(i=0;i
if(ktcp(a[i])==1&&(a[i])%2==0)
{
dem++;
max=a[i];
}
if(dem==0)
printf("\n mang khong co chinh phuong chan! ");
else
{
for(i=0;i
if(ktcp(a[i])==1&&(a[i])%2==0&&a[i]>max)
max=a[i];
printf("\n phan tu chinh phuong chan lon nhat trong mang la
%d:",max);
}
return max;
}
main()
{
int i,n,a[50];
nhapmang(a,n);
printf("\n\n mang vua nhap: ");
xuatmang(a,n);
cpchanmax(a,n);
getch();
}
BAI 15+20 ĐẾM NGUYÊN TỐ, TRUNG BÌNH CỘNG NGUYÊN TỐ
#include<stdio.h>
#include<conio.h>
void nhapmang(int a[], int &n)
{
printf("\n nhap so luong phan tu: ");
scanf("%d",&n);
for(int i=0;i
{
printf("\n phan tu thu [%d]: ",i);
scanf("%d",&a[i]);
}
}
void xuatmang (int a[], int n)
{
int i;
for(i=0;i
printf("%5d",a[i]);
printf("\n\n");
}
//kiem tra phan tu co phai nguyen to khong
int ktnt(int n)
{
int i,dem=0;
for(i=1;i<=n;i++)
if(n%i==0)
dem++;
if(dem==2)
return 1;
return 0;
}
//dem nguyen to
void demnt(int a[], int n)
{
int i, dem=0;
for(i=0;i
if(ktnt(a[i])==1)
dem++;
if(dem==0)
printf("\n mang khong111111 co phan tu nguyen to! ");
else
printf("\n so phan tu nguyen to trong mang la: %5d \n\n",dem);
}
//trung binhh cong so nguyen to trong mang
float tbcnt(int a[], int n)
{
int i,tong=0, spt=0;
for(i=0;i
if(ktnt(a[i])==1)
{
spt++;
tong+=a[i];
}
if(spt==0)
return 0;
return 1.0*tong/spt;
}
main()
{
int i,n,a[50];
nhapmang(a,n);
printf("\n\n mang vua nhap la: ");
xuatmang(a,n);
demnt(a,n);
if(tbcnt==0)
printf("\n\n mang khong co so nguyen to!");
else
printf("\n\n trung binh cong cac so nguyen to trong mang la:
%5.2f",tbcnt(a,n));
getch();
}
BÀI 23 SẮP XẾP TĂNG ÂM, GIẢM DƯƠNG
#include<stdio.h>
#include<math.h>
void nhapmang(int a[], int &n)
{
printf("\n nhap so luong phan tu: ");
scanf("%d",&n);
for(int i=0;i
{
printf("\n phan tu thu [%d]: ",i);
scanf("%d",&a[i]);
}
}
void xuatmang(int a[], int n)
{
int i;
for(i=0;i
printf("%5d",a[i]);
printf("\n\n");
}
// hoang vi 2 so
int hoanvi(int &x, int &y)
{
int z;
z=x; x=y; y=z;
}
/*/kiem tra mang co so duong khong
int mduong(int a[], int n)
{
for(int i=0;i
if(a[i]==0&&a[i]>0)
return 1;
return 0;
}*/
//sap xep mang theo thu tu tang dan so am va giam dan so duong
void sxduong(int a[], int &n)
{
int i,j;
//sap xep phan tu duong ve dau mang; phan tu am ve cuoi mang
for (i=0;i
for(j=i+1;j
if(a[i]<0&&a[j]>0)
hoanvi(a[i],a[j]);
//sap xep duong tang dan
for (i=0;i
for(j=i+1;j
if(a[i]>0&&a[j]>0&&a[i]>a[j])
hoanvi(a[i],a[j]);
//sap xep am giam dan
for (i=0;i
for(j=i+1;j
if(a[i]<0&&a[j]<0&&a[i]
hoanvi(a[i],a[j]);
}
int main()
{
int i,n,a[50];
nhapmang(a,n);
printf("\n\n mang vua nhap la: ");
xuatmang(a,n);
printf("\n\n mang sap xep tang dan so duong o dau mang va giam dan am ve
cuoi mang la: ");
sxduong(a,n);
xuatmang(a,n);
}
BÀI 33 SẮP XẾP CHÍNH PHƯƠNG
#include<stdio.h>
#include<conio.h>
void nhapmang(int a[], int &n)
{
printf("\n nhap so phan tu cua mang: ");
scanf("%d",&n);
for(int i=0;i
{
printf("\n phan tu thu [%d]: ",i);
scanf("%d",&a[i]);
}
}
void xuatmang(int a[], int n)
{
for(int i=0;i
printf("%5d", a[i]);
printf("\n\n");
}
int hoanvi(int &x, int &y)
{
int z;
z=x;x=y;y=z;
}
//kiem tra phan tu co phai chinh phuong khong
int ktcp(int n)
{
for(int i=1;i<=n;i++)
if(i*i==n)
return 1;
return 0;
}
//sap xep tang dan chinh phuong giam dan khong chinh phuong
void sxcp(int a[], int &n)
{
int i,j;
//sx chinh phuong ve dau mang, khong chinh phuong ve cuoi mang
for(i=0;i
for(j=i+1;j
if(ktcp(a[i])==0&&ktcp(a[j])==1)
hoanvi(a[i],a[j]);
// sx chinh phuong tang dan
for(i=0;i
for(j=i+1;j
if(ktcp(a[i])==1&&ktcp(a[j])==1&&a[i]>a[j])
hoanvi(a[i],a[j]);
//sx khong chinh phuong
for(i=0;i
for(j=i+1;j
if(ktcp(a[i])==0&&ktcp(a[j])==0&&a[i]
hoanvi(a[i],a[j]);
}
main()
{
int i,n,a[50];
nhapmang(a,n);
printf("\n\n mang vua nhap la: ");
xuatmang(a,n);
printf("\n\n mang sx cp tang dan dau mang va khong cp giam dan cuoi mang
la: ");
sxcp(a,n);
xuatmang(a,n);
getch();
}
BAI 34 CHÈN NGUYÊN TỐ VÀO VỊ TRÍ K
#include<stdio.h>
#include<conio.h>
void nhapmang(int a[], int &n)
{
printf("\n nhap so luong phan tu: ");
scanf("%d",&n);
for(int i=0;i
{
printf("\n phan tu thu[%d]: ",i);
scanf("%d",&a[i]);
}
}
void xuatmang(int a[], int n)
{
for(int i=0;i
printf("%5d",a[i]);
printf("\n\n");
}
int ktnt(int n)
{
int i,dem=0;
for(i=1;i<=n;i++)
if(n%i==0)
dem++;
if(dem==2)
return 1;
return 0;
}
int timntdau(int a[], int n)
{
int i,dem=0,nt;
for(i=0;i
if(ktnt(a[i])==1)
{
dem++;
nt=a[i];
break;
}
if(dem==0) return 0;
else
return nt;
}
void chenntdau(int a[], int &n, int k)
{
int i, x=timntdau(a,n);
for(i=n;i>k;i--)
a[i]=a[i-1];
a[k]=x;
n++;
}
main()
{
int a[50], n, k;
nhapmang(a,n);
printf("\n\n mang vua nhap la:");
xuatmang(a,n);
printf("\n nhap vi tri k can chen: ");
scanf("%d",&k);
if(timntdau(a,n)==0) printf("\n mang khong co nguyen to! ");
else
printf("\n\n vi tri nguyen to dau tien la: ",timntdau(a,n));
printf("\n\n mang sau khi chen so nguyen to dau %d len vi tri k= %d la:
",timntdau(a,n),k);
chenntdau(a,n,k);
xuatmang(a,n);
getch();
}
BÀI 35 CHÈN NGUYÊN TỐ CUỐI VÀO VỊ TRÍ ĐẦU
#include<stdio.h>
#include<conio.h>
void nhapmang(int a[], int &n)
{
printf("\n nhap so luong phan tu: ");
scanf("%d",&n);
for(int i=0;i
{
printf("\n phan tu thu[%d]: ",i);
scanf("%d",&a[i]);
}
}
void xuatmang(int a[], int n)
{
for(int i=0;i
printf("%5d",a[i]);
printf("\n\n");
}
int ktnt(int n)
{
int i,dem=0;
for(i=1;i<=n;i++)
if(n%i==0)
dem++;
if(dem==2)
return 1;
return 0;
}
int timntcuoi(int a[], int n)
{
int i,dem=0, nt;
for(i=n-1;i>=0;i--)
if(ktnt(a[i])==1)
{
dem++;
nt=a[i];
break;
}
if(dem==0) return 0;
else
return nt;
}
int vitrimin(int a[], int n)
{
int i,min,vtmin;
for(i=0;i
if(a[i]==0&&a[i]
{
min=a[i];
}
for(i=0;i
if(min=a[i])
{
vtmin=i;
break;
}
return vtmin;
}
void chenntvaovtmin(int a[], int &n)
{
int i,k=vitrimin(a,n),x=timntcuoi(a,n);
for(i=n;i>k;i--)
a[i]=a[i-1];
a[k]=x;
n++;
}
main()
{
int a[50],n;
nhapmang(a,n);
printf("\n\n mang vua nhap la:");
xuatmang(a,n);
if(timntcuoi(a,n)==0) printf("\n mang khong co nguyen to!");
else
printf("\n vi tri nguyen to cuoi la: %d",timntcuoi(a,n));
printf("\n vi tri so nho nhat la: %d ",vitrimin(a,n));
printf("\n mang sau khi chen nguyen to cuoi %d vao vi tri nho nhat %d la:
",timntcuoi(a,n),vitrimin(a,n));
chenntvaovtmin(a,n);
xuatmang(a,n);
getch();
}
BÀI 37 CHÈN MAX NT VÀO VỊ TRÍ K
#include<stdio.h>
#include<conio.h>
void nhapmang(int a[], int &n)
{
printf("\n nhap so luong phan tu: ");
scanf("%d",&n);
for(int i=0;i
{
printf("\n phan tu thu [%d]: ",i);
scanf("%d",&a[i]);
}
}
void xuatmang (int a[], int n)
{
int i;
for(i=0;i
printf("%5d",a[i]);
printf("\n\n");
}
//kiem tra phan tu co phai nguyen to khong
int ktnt(int n)
{
int i,dem=0;
for(i=1;i<=n;i++)
if(n%i==0)
dem++;
if(dem==2)
return 1;
return 0;
}
int ntmax(int a[], int n)
{
int i,max,dem=0;
for(i=0;i
if(ktnt(a[i])==1)
{
max=a[i];
dem++;
}
for(i=0;i
if(ktnt(a[i])==1&&a[i]>max)
{
max=a[i];
}
return max;
}
void chenntmax (int a[], int &n, int &k)
{
int i,x=ntmax(a,n);
for(i=n;i>k;i--)
a[i]=a[i-1];
a[k]=x;
n++;
}
main()
{
int a[50], n,k;
nhapmang(a,n);
printf("\n mang vua nhap la: ");
xuatmang(a,n);
if(ntmax(a,n)==0) printf("\n mang khoong co nguyen to! ");
else
printf("\n\n nhap vi tri k: ");
scanf("%d",&k);
printf("\n phan tu nguyen to max la: %d",ntmax(a,n));
printf("\n mang sau khi chen nguyen to max = %d vao vi tri k=%d la:
",ntmax(a,n),k);
chenntmax(a,n,k);
xuatmang(a,n);
getch();
}
BÀI 40 CHÈN MIN CHẴN VÀO VỊ TRÍ ĐẦU
#include<stdio.h>
#include<conio.h>
//nhap mang mot chieu
void nhapmang(int a[],int &n)
{
printf("\n so phan tu cua mang la:");
scanf("%d",&n);
for(int i=0;i
{
printf("\n phan thu thu [%d]: ",i);
scanf("%d",&a[i]);
}
}
// xuat mang mot chieu
void xuatmang (int a[], int n)
{
int i;
for (int i=0;i
printf("%5d",a[i]);
printf("\n\n");
}
// chen phan tu chan min len vi tri dau tien
void chenminchanlendau(int a[], int &n)
{
int i,min=-1,dem=0;
for(i=0;i
if(a[i]%2==0)
{
dem++;
min=a[i];
}
if(dem==0)
printf("\n khong co so chan !\n\n");
else
{
for(i=0;i
if(a[i]%2==0&&a[i]
min=a[i];
printf("\n phan tu chan nho nhat trong mang: %2d \n\n",min);
}
if(min!=-1)
{
for(int j=n;j>=0;j--)
a[j]=a[j-1];
a[0]=min;
n++;
}
}
main()
{
int n, a[50];
nhapmang(a,n);
printf("\n\n mang vua nhap la:");
xuatmang(a,n);
chenminchanlendau(a,n);
printf("\n\n mang sau khi chen phan tu chan nho nhat len dau la: ");
xuatmang(a,n);
getch();
}
BÀI 41 CHÈN CHÍNH PHƯƠNG MIN VÀO NGUYÊN TỐ CUỐI
#include<stdio.h>
#include<math.h>
//nhap mang mot chieu
void nhapmang(int a[],int &n)
{
printf("\n so phan tu cua mang la:");
scanf("%d",&n);
for(int i=0;i
{
printf("\n phan thu thu [%d]: ",i);
scanf("%d",&a[i]);
}
}
// xuat mang mot chieu
void xuatmang (int a[], int n)
{
int i;
for (i=0;i
printf("%5d",a[i]);
printf("\n\n");
}
int ktcp(int n)
{
for(int i=1;i<=n;i++)
if(i*i==n)
return 1;
return 0;
}
int ktmcp (int a[], int n)
{
for(int j=0;j
if(ktcp(a[j])==1)
return 1;
return 0;
}
int cpmin(int a[],int n)
{
int i,min;
for(i=0;i
if(ktcp(a[i])==1)
min=a[i];
if(ktcp(a[i])==1&&a[i]
min=a[i];
return min;
}
int ktnt(int n)
{
int i,dem=0;
for(i=1;i<=n;i++)
if(n%i==0)
dem++;
if(dem==2)
return 1;
return 0;
}
int ktmnt(int a[], int n)
{
for(int j=0;j
if(ktnt(a[j])==1)
return 1;
return 0;
}
int vtntcuoi(int a[], int n)
{
for(int vt=n;vt>=0;vt--)
if(ktnt(a[vt])==1)
return vt;
return -1;
}
void chencp(int a[], int &n)
{
int vt=vtntcuoi(a,n), x=cpmin(a,n);
for(int k=n;k>vtntcuoi(a,n);k--)
a[k]=a[k-1];
a[vt]=x;
n++;
}
int main()
{
int n,a[50];
nhapmang(a,n);
printf("\n\n mang vua nhap la:");
xuatmang(a,n);
if(vtntcuoi(a,n)==-1||ktmcp(a,n)==0)
printf("\n mang khong co chinh phuong hoac nguyen to!");
else
{
printf("\n phan tu chinh phuong nho nhat la: %d",cpmin(a,n));
printf("\n vi tri nguyen to cuoi cung la %d:",vtntcuoi(a,n));
chencp(a,n);
printf("\n mang sau khi chen cpmin=%d vao vtntcuoi = [%d] la:
",cpmin(a,n),vtntcuoi(a,n));
xuatmang(a,n);
}
}
BÀI 42 CHÈN X VÀO VỊ TRÍ K
#include<stdio.h>
#include<conio.h>
void nhapmang(int a[], int &n)
{
printf("\n nhap so luong phan tu: ");
scanf("%d",&n);
for(int i=0;i
{
printf("\n phan tu thu [%d]: ",i);
scanf("%d",&a[i]);
}
}
void xuatmang(int a[], int n)
{
for(int i=0; i
printf("%5d",a[i]);
printf("\n\n");
}
// chen x vao vi tri vt
void chenx(int a[], int &n, int vt, int x)
{
if(vt>=0&&vt<=n)
{
for(int i=n;i>vt;i--)
a[i]=a[i-1];
a[vt]=x;
n++;
}
}
main()
{
int a[50],n,x,k;
nhapmang(a,n);
printf("\n\n mang vua nhap la: ");
xuatmang(a,n);
printf("\n\n nhap vi tri k can chen: ");
scanf("%d",&k);
printf("\n\n nhap so x can chen: ");
scanf("%d",&x);
printf("\n\n mang sau khi chen so x = %3d va vi tri k=[%d] la",x,k);
chenx(a,n,k,x);
xuatmang(a,n);
getch();
}
BÀI 47 XÓA NGUYÊN TỐ
#include<stdio.h>
#include<conio.h>
void nhapmang(int a[], int &n)
{
printf("\n nhap so luong phan tu: ");
scanf("%d",&n);
for(int i=0;i
{
printf("\n phan tu thu [%d]: ",i);
scanf("%d", &a[i]);
}
}
void xuatmang(int a[], int n)
{
for(int i=0;i
printf("%5d", a[i]);
printf("\n\n");
}
int ktnt(int n)
{
int i,dem=0;
for(i=1;i<=n;i++)
if(n%i==0)
dem++;
if(dem==2)
return 1;
return 0;
}
void xoa(int a[], int &n, int vt)
{
if(vt>=0&&vt
{
for(int i=vt;i
a[i]=a[i+1];
n--;
}
}
void xoant(int a[], int &n)
{
int i;
for(i=0;i
if(ktnt(a[i])==1)
{
xoa(a,n,i);
i--;
}
}
main()
{
int a[50],n;
nhapmang(a,n);
printf("\n mang vua nhap la: ");
xuatmang(a,n);
xoant(a,n);
printf("\n mang sau khi xoa nguyen to la:");
xuatmang(a,n);
getch();
}
BAI 49 XÓA SỐ NHỎ HƠN K
#include<stdio.h>
#include<conio.h>
void nhapmang(int a[], int &n)
{
printf("\n nhap so luong phan tu: ");
scanf("%d",&n);
for(int i=0;i
{
printf("\n phan tu thu [%d]: ",i);
scanf("%d",&a[i]);
}
}
void xuatmang (int a[], int n)
{
int i;
for(i=0;i
printf("%5d",a[i]);
printf("\n\n");
}
int xoa(int a[], int &n, int vt)
{
if(vt<n&&vt>=0)
for(int i=vt;i
a[i]=a[i+1];
n--;
}
int xoak(int a[], int &n)
{
int i,k;
printf("\n nhap k: ");
scanf("%d",&k);
for(i=0;i
if(a[i]
{
xoa(a,n,i);
i--;
}
}
main()
{
int a[50],n;
nhapmang(a,n);
printf("\n mang vua nhap la: ");
xuatmang(a,n);
xoak(a,n);
printf("\n mang sau khi xoa la:");
xuatmang(a,n);
getch();
}
BÀI 60 TÁCH MẢNG NGUYÊN TỐ
#include<stdio.h>