
Int main()
{
const int n=5;
int *x=new int [n];
int *a=new int [n];//совершенные числа
int *b=new int [n];//четные
int *c=new int [n];//остальные
int countA=0, countB=0, countC=0;
bool flag;
for(int i=0; i<n; i++)
scanf("%d", &x[i]);
for(int i=0; i<n; i++)
{
flag=false;
if(is_perfect(x[i]))
{
flag=true;
a[countA]=x[i];
countA++;
}
if(is_chet(x[i]))
{
flag=true;
b[countB]=x[i];
countB++;
}
if(!flag)
{
c[countC]=x[i];
countC++;
}
}
printf("\n\n\n");
for(int i=0; i<countA; i++)
if(a[i])printf("%d ", a[i]);
printf("\n\n\n");
for(int i=0; i<countB; i++)
if(b[i])printf("%d ", b[i]);
printf("\n\n\n");
for(int i=0; i<countC; i++)
if(c[i])printf("%d ", c[i]);
getch();
}
Из одномерного массива, содержащего натуральные числа, создать три новых одномерных массива. Первый массив содержит простые числа входного массива, второй – четные, третий – все остальные. Является ли число простым, оформить как функцию. Глобальных переменных не использовать. Простые числа – это натуральные числа, которые делятся только на единицу и сами на себя.
bool is_simple(int num)
{
if(num<0 || num==1)return 0;
for (int i=2;i<=num/2;i++)
{
if (num%i==0)
return false;
}
return true;
}
bool is_chet(int number)
{
if( number %2 ==0) return true;
else return false;
}
Int main()
{
const int n=5;
int *x=new int [n];
int *a=new int [n];//совершенные числа
int *b=new int [n];//четные
int *c=new int [n];//остальные
int countA=0, countB=0, countC=0;
bool flag;
for(int i=0; i<n; i++)
scanf("%d", &x[i]);
for(int i=0; i<n; i++)
{
flag=false;
if(is_simple(x[i]))
{
flag=true;
a[countA]=x[i];
countA++;
}
if(is_chet(x[i]))
{
flag=true;
b[countB]=x[i];
countB++;
}
if(!flag)
{
c[countC]=x[i];
countC++;
}
}
printf("\n\n\n");
for(int i=0; i<countA; i++)
printf("%d ", a[i]);
printf("\n\n\n");
for(int i=0; i<countB; i++)
printf("%d ", b[i]);
printf("\n\n\n");
for(int i=0; i<countC; i++)
printf("%d ", c[i]);
getch();
}
Дано: прямоугольная целочисленная матрица A[N,M]. Определить номера строк матрицы, в которых содержится хотя бы один элемент, являющийся совершенным числом. Память под матрицу выделить в динамической области. Определение, является ли число совершенным, оформить как функцию. Глобальных переменных не использовать. Совершенные числа – это натуральные числа, равные сумме всех своих делителей за исключением самого себя (например, число 6 совершенно 6 = 1+2+3)
int sov(int k);
int **scan(int &n, int &m);
void print(int **a, int n, int m);
int sum_sov(int **a, int n, int m);