Решето Эрастофена

Аватар пользователя merkul40
ср, 11/15/2017 - 22:38 -- merkul40

Сабж - метод нахождения простых чисел при помощи массива.
Решение задачи:

#include<stdio.h>
#include<stdlib.h>
 
#define  	NUMBER	1000		// Размер массива
 
void printing(int mas[NUMBER]);
int determination(void);
int Mass[NUMBER];
 
int main ()
{
	determination();
 
	for (int i = 2; i < NUMBER; i++)
	{
		for (int j = 2; j * j <= i; j++)
		{
			if (i % j == 0)
			{
				Mass [i] = 0;
				//printf("%d\t%d\n\n", j, Mass [j]);
				break;
				}
			}
 
		}
 
	printing(Mass);
	}
 
 
 
int determination(void)//функция присвоения значений массиву
{
	for (int i = 0; i < NUMBER; i++)
	{
		Mass [i] = 1;
		}
 
	}
 
void printing(int mas[NUMBER])
{
	for (int i = 2; i < NUMBER; i++)
	{
		if (mas[i] == 1)
		{
			printf("%d\t%d\n", i , mas[i]);
			}
		}
	}
>