Вывести простые числа от 1 до 100 - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Добрый день,есть код,при компиляции которого должны выдаваться числа от 1 до 100.где-то внутри есть ошибка...не работает. код состоит из трех отдельных,которые нужно соединить в один..честно говоря,не совсем рублю,как это нужно сделать. первый:
#include <stdio.h>
#include "eratosthenes.h"
 
#define VELIKOST 100
 
int main(void)
{
    int i, pole[RAZMER];
 
    eratosthena_resheto(pole, RAZMER);
 
    printf("vse prostye cisla menshie,chem %d :", RAZMER);
    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
и последняя часть.
#include <math.h>
 
void eratosthena_resheto(int pole[], unsigned int razmer)
{
    int i, j, granica_sverhu = sqrt(razmer);
 
    pole[0] = 0;
    pole[1] = 0;
    for (i = 2; i < razmer; i++)
        pole[i] = 1;
 
    for (i = 2; i < granica_sverhu; i++)
        if (pole[i])
            for (j = i*i; j < razmer; j += i)
                pole[i] = 0;
}

Решение задачи: «Вывести простые числа от 1 до 100»

textual
Листинг программы
void erat_sito(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;
 
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.154 из 5
Похожие ответы