#include <stdio.h>
#define Max 10000
#include <math.h>
#include <limits.h>
int kiemtra (int a[], int n , int k);
void nhapmang(int a[], int &n);
void xuatmang(int a[], int n);
void xuatsochinhphuongovitrile(int a[], int n);
void xuatvitri(int a[], int n);
int tinhtong(int a[], int n);
void sapxep(int a[], int n);
int main()
{
int a[Max], n;
nhapmang(a, n);
xuatmang(a, n);
xuatsochinhphuongovitrile(a, n);
xuatvitri(a, n);
printf("\nTong cac so o vi tri chan la: %d", tinhtong(a, n));
sapxep(a, n);
return 0;
}
int kiemtra(int a[], int n, int k)
{
for (int i = 0; i < n; i++)
{
if (a[i] == k)
return 1;
}
return 0;
}
// cau a
void nhapmang(int a[], int &n)
{
printf("Moi nhap vao so phan tu cua mang: ");
scanf("%d",&n);
int k;
for (int i = 0; i < n; i++)
{
printf("a[%d]= ", i);
scanf("%d", &k);
if(kiemtra(a, n, k) == 1)
{
printf("Nhap sai vui long nhap lai -_- \n");
i--;
}
else
{
a[i] = k;
}
}
}
// cau b
void xuatmang(int a[], int n)
{
printf("Mang gom cac phan tu la: ");
for (int i = 0; i < n; i++){
printf(" %d ",a[i]);
}
}
int sochinhphuong(int n)
{
return sqrt(n) == int (sqrt(n));
}
// Cau c
void xuatsochinhphuongovitrile(int a[], int n)
{
printf("\nCac so chinh phuong thoa man:");
for(int i = 0; i < n; i++)
{
if(sochinhphuong(a[i]) && (i % 2 != 0))
{
printf(" %d ",a[i]);
}
}
}
int solonnhat(int a[], int n)
{
int lon;
a[0] = lon;
for(int i = 0; i < n; i++)
{
if(a[i] > lon)
{
lon = a[i];
}
}
return lon;
}
// Cau d
void xuatvitri(int a[], int n)
{
printf("\nVi tri phan tu co gia tri lon nhat la: ");
int max = solonnhat(a,n);
for (int i = 0; i < n; i++)
{
if(a[i] == max){
printf("%d ",i);
}
}
}
// cau e
int tinhtong(int a[], int n)
{
int sum = 0;
for (int i = 0; i < n; i++)
{
if(i % 2 == 0)
{
sum = sum + a[i];
}
}
return sum;
}
void swap(int &a, int &b)
{
int temp = a;
a = b;
b = temp;
}
// Cau f
void sapxep(int a[], int n)
{
for (int i = 0; i < n -1; i++)
{
for (int j = i + 1; j < n; j++)
{
if (a[i] > a[j])
{
swap(a[i], a[j]);
}
}
}
printf("\nMang da sap xep la: ");
for (int i = 0; i < n; i++)
{
printf("%4d",a[i]);
}
}