Найти непростые числа в массиве и вывести их
Добавлено: 19 мар 2015, 20:32
Написать программу, которая будет осуществлять поиск всех непростых чисел в заданном массиве и выводить их на экран.
Под простым числом подразумевается натуральное число, имеющее ровно два различных натуральных делителя: 1 и само себя.
Формат входных данных
Формат результата
Для каждого массива из входных данных выведите по одному в строке те элементы массива, которые НЕ ЯВЛЯЮТСЯ простыми числами. Если в маасиве все элементы простые числа, выведите -1.
Мои нароботки не работают((
Под простым числом подразумевается натуральное число, имеющее ровно два различных натуральных делителя: 1 и само себя.
Формат входных данных
Формат результата
Для каждого массива из входных данных выведите по одному в строке те элементы массива, которые НЕ ЯВЛЯЮТСЯ простыми числами. Если в маасиве все элементы простые числа, выведите -1.
Мои нароботки не работают((
Код: Выделить всё
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i, d, n,f;
int T=0,m=0;
scanf("%d",&T);
while(m <T ){
int Na;
scanf("%d", &Na);
int a[Na];
int j;
for(j=0;j<Na;j++){
scanf("%d",&a[j]);}
for (i=0; i<=Na; i++)
{
n=a[i];
f=0;
if(n==1)
f=0;
for (d=2; d*d<=n; d++)
if(n%d==0)
{
f=1;
break;
}
if(!f)
printf("-1");
else printf("%d",a[i]);
}
m++;
}
return 0;
}