Решето Эратосфена - C (СИ)
Формулировка задачи:
Добрый день!помогите пожалуйста найти ошибку.код состоит из трех файлов.в первом из них-ошибка,подскажите,какая?остальные две части прикрепляю для
понимания.
вот здесь ошибка.
вот остальные две части
и последняя
повторяю-нужно найти ошибку в первом файле..Спасибо заранее.
#include <stdio.h>
#include "eratosthenes.h"
#define VELIKOST 100
int main(void)
{
int i, pole[VELIKOST];
eratosthena_resheto(pole, VELIKOST);
printf("Все простые числа меньше ,чем %d равны:", VELIKOST);
for (i = 0; i <= VELIKOST; i++)
if (pole[i])
printf(" %d", i);
printf("\n");
return 0;
}#ifndef _ERATOSTHENES_H_ #define _ERATOSTHENES_H_ void eratosthena_resheto(int pole[], unsigned int razmer); #endif
void eratosthena_resheto(int pole[], unsigned int velikost)
{
int i, j, granica_sverhu = sqrt(velikost);
pole[0] = 0;
pole[1] = 0;
for (i = 2; i < velikost; i++)
pole[i] = 1;
for (i = 2; i < granica_sverhu; i++)
if (pole[i])
for (j = i*i; j < velikost; j += i)
pole[j] = 0;
}Решение задачи: «Решето Эратосфена»
textual
Листинг программы
for (i = 0; i < VELIKOST; i++)
Объяснение кода листинга программы
- В цикле for происходит итерация по элементам массива VELIKOST, начиная с индекса 0 и до VELIKOST-1.
- Переменная i используется в качестве индекса для обращения к элементам массива.
- На каждой итерации значение переменной i увеличивается на 1.
- Код внутри цикла выполняется для каждого элемента массива VELIKOST.