Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Mysia2
0 / 0 / 5
Регистрация: 03.12.2014
Сообщений: 39
#1

Программа выводит простые числа. Прокомментировать код - C (СИ)

21.01.2015, 22:02. Просмотров 375. Ответов 3
Метки нет (Все метки)

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
#include <conio.h>
#define MAX 1000
int Simple ( int N );
 
 
int main()
{
int i;
printf("1\n 2\n");
for(i=3; i<MAX; i+=2) 
if (Simple(i)) printf("%d\n", i);
getch();
}
 
 
int Simple ( int N )
{
int i;
for (i = 2; i*i <= N; i ++)
if ( N % i ==  0 ) return 0;
return 1;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.01.2015, 22:02
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Программа выводит простые числа. Прокомментировать код (C (СИ)):

Написать программу с функцией которая выводит все простые числа до заданного m
Задача такова: написать программу с функцией которая выводит все простые числа...

Программа которая находит все простые числа из интервала в С(Си)
Помогите пожалуйста написать эту программу, я пытался сам, но у меня выводит...

Функцией определить простые числа, вывести все простые числа до N
Условие: С помощью сложной функции определения опредилить, является ли число...

Программа выводит неправильные числа
короче у меня вопрос: #include &lt;stdio.h&gt; #include &lt;conio.h&gt; void...

Программа выводит разные числа
Доброго времени суток! Только поступив в ВУЗ, столкнулся с проблемой на первой...

Программа выводит непонятные числа
Почему программа выводит какие то непонятные цифры? #include &lt;stdio.h&gt; main...

3
OlegKri
26 / 25 / 8
Регистрация: 19.01.2015
Сообщений: 84
21.01.2015, 22:41 #2
for(x;y;z) - цикл
x-первое значение
y-условие, при результате которого true(истина) работа программы продолжается внутри цикла, в данном случае выполняется оператор if(если-т.е. если то что стоит в скобках после if правда, то выполняем первый(в данном случает оператор return 0 в ф-ии Simple, если ложь - то return 1; )
z- это каким будет i в следующий раз, т.е. мы к предыдущему значению i что-то прибавляем или отнимаем как угодно.
запись if (Simple(i)) printf("%d\n", i); означает, что если ф-я Simple дает 1, что соответствует истине, то мы печатаем на экране число, если 0(ложь)- то не печатаем а ищем дальше простые числа.
0
Mysia2
0 / 0 / 5
Регистрация: 03.12.2014
Сообщений: 39
21.01.2015, 22:50  [ТС] #3
OlegKri, это понятно)
меня интересует как обнаруживаются простые числа с этого момента for (i = 2; i*i <= N; i ++)
0
OlegKri
26 / 25 / 8
Регистрация: 19.01.2015
Сообщений: 84
21.01.2015, 23:09 #4
for (i = 2; i*i <= N; i ++)
if ( N % i == 0 ) return 0;
return 1;
простое число-это число которое делится на 1 и на себя
есть определенные алгоритмы нахождения начального списка простых чисел вплоть до некоторого значения. Решето каких-то умных мужиков) здесь какой-то из этих алгоритмов. с допущениями определенными, сделанными из наблюдений) очевидно что четными быть не могут простые числа, за исключением 2. вот поэтому 1 и 2 сами выводят. с 3 начинают искать) для прояснения советую прогуглить алгоритмы поиска начальных простых чисел.
извини если не пролил ясности))
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.01.2015, 23:09
Привет! Вот еще темы с решениями:

Программа выводит не правильно числа
Вводится последовательность из целых чисел, которая заканчивается нулем. Найти...

Программа выводит огромные отрицательные числа
#include &lt;stdio.h&gt; #include &lt;math.h&gt; #include &lt;windows.h&gt; #include...

Программа выводит слишком большие числа
Здесь реализован метод наименьших квадратов для нахождения коэффициентов...

Составить рекурсивную функцию, которая выводит на экран двоичный код целого числа
Задание 5. Составить рекурсивную функцию, которая выводит на экран двоичный код...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru