Определить количество простых чисел в этой последовательности - C (СИ)
Формулировка задачи:
Дан одномерный целочисленный массив. Определить количество простых чисел в этой последовательности.
подскажите, пожалуйста(
чем заменить вопросы не знаю, подскажите(
#include "stdafx.h" bool simple(int n) { if(n <= 1) return 0; for(int i = 2; i <= n/2; i++) if(n % i == 0) return 0; } int _tmain(int argc, _TCHAR* argv[]) { int A [100]; int k=0; // ????? k++; printf("%k",k); return 0; }
и вообще сомневаюсь в правильности задания одномерного массива
Решение задачи: «Определить количество простых чисел в этой последовательности»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <time.h> int is_prime(int n) { int i; for ( i = 2; i < n / 2 + 1; ++i ) if ( ! ( n % i ) ) return 0; return 1; } #define ELEMENTS_COUNT (100) #define TOP_VALUE (1000) int main(void) { int array[ELEMENTS_COUNT], i, primesCount; srand(time(NULL)); for ( i = 0; i < ELEMENTS_COUNT; ++i ) array[i] = rand() % TOP_VALUE; for ( primesCount = i = 0; i < ELEMENTS_COUNT; ++i ) if ( is_prime(array[i]) ) ++primesCount; printf("In array of %d random integers before %d found %d prime numbers.\n", ELEMENTS_COUNT, TOP_VALUE, primesCount); return 0; }
Объяснение кода листинга программы
В данном коде определен прототип функции is_prime(int n), которая проверяет, является ли число n простым. Затем, в функции main(), создается массив из 100 случайных целых чисел в диапазоне от 1 до 1000. Далее, в цикле перебираются все числа в массиве и проверяется, является ли каждое из них простым с помощью функции is_prime(). Если число простое, к переменной primesCount прибавляется единица. В конце программы выводится сообщение, содержащее количество простых чисел в массиве.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д