В массиве целых чисел найти количество простых чисел - C (СИ)
Формулировка задачи:
Требуется определить массив целых чисел , заполнить его случайными числами или ввести его элементы с клавиатуры и определить его характеристики в соответствии с вариантом.
Программа должна содержать следующие функции.
•Инициализация элементов массива случайными числами или вводимыми с клавиатуры.
•Вывод массива на экран.
А требуется:в массиве целых чисел найти количество простых чисел. Заранее спасибо
Решение задачи: «В массиве целых чисел найти количество простых чисел»
textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#define N 500
void randmas(int *a, int n) //Заполнение массива
{
int k;
srand(time(NULL));
int i = 0;
while(i < n) {
*a++ = rand() % N;
i++;
}
}
int ifprostoe(int a) //Если число простое
{
int i = 2;
for(i; i <=a/2 ; i=(i == 2) ? i+1 : i+2) if(a % i == 0) return 0;
return 1;
}
void putmas(int *a, int n) //Вывод массива
{
int i = 0;
while(i < n) {
printf("%d\n", *a++);
i++;
}
}
int main()
{
int a[5];
randmas(a,sizeof(a)/sizeof(int));
int z=0, i;
for(i = 0; i<sizeof(a)/sizeof(int); i++)
if(ifprostoe(a[i])) z++;
printf("Kolvo prostih 4isel - %d\n", z);
putmas(a, sizeof(a)/sizeof(int));
}
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с массивами и временем
- Объявление массива и его размера
- Функция для заполнения массива случайными числами
- Функция для проверки числа на простоту
- Функция для вывода массива на экран
- Объявление и инициализация массива в функции main
- Вызов функции для заполнения массива случайными числами
- Объявление переменной для подсчета количества простых чисел
- Цикл для перебора всех чисел в массиве и проверки их на простоту
- Увеличение счетчика, если число простое
- Вывод количества простых чисел на экран
- Вывод массива на экран