#include <stdlib.h>
#include <iostream>
#include <stdio.h>
#include <cstdlib>
#include <cmath>
using namespace std;
bool isprime(int n)
{
if(n == 1)
return false;
for(int d = 2; d * d <= n; d++)
{
if(n % d == 0)
return false;
}
return true;
}
void DisplaySqrt(int mas[], int n)
{
for (int i = 0; i < n; i++)
cout<<sqrt(mas[i])<<" ";
}
void DeleteNonPrime(int mas[], int &n)
{
for (int i = 0; i < n; i++)
{
if (!isprime(mas[i]))
{
for (int j = i; j < n - 1; j++)
{
mas[j] = mas[j + 1];
}
--n; --i;
}
}
}
int main()
{
int array1[2000];
int array2[2000];
// cout<<"Enter 20 numbers : ";
int sizeArray2 = 0;
int sizeArray1 = 20;
cout<<"Enter the 20 numbers : ";
for (int i = 0; i < 20; i++)
{
cin>>array1[i];
array1[i] = i + 1;
if (isprime(array1[i]) || array1[i] % 2 == 0 )
{
array2[sizeArray2] = array1[i]; ++sizeArray2;
}
}
cout<<endl<<endl<<endl;
cout<<"1 - All prime and even numbers from the array in a new array : "<<endl<<endl;
for (int j = 0; j < sizeArray2; j++)
{
cout<<array2[j]<<" ";
}
cout<<endl<<endl<<endl;
cout<<"2 - Square root of the numbers stored in the new array : "<<endl<<endl;
DisplaySqrt(array2, sizeArray2); cout<<endl<<endl<<endl;
cout<<"3 - Delete all the non-prime numbers from the array : "<<endl<<endl;
DeleteNonPrime(array1, sizeArray1);
for (int j = 0; j < sizeArray1; j++)
{
cout<<array1[j]<<" ";
}
cout<<endl<<endl<<endl;
system("pause");
return 0;
}
Comments
Leave a comment