Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Kudaev
Сообщений: n/a
#1

Найти натуральные числа - C++

09.06.2011, 15:28. Просмотров 524. Ответов 4
Метки нет (Все метки)

Недавно начал изучать С++. Изучение начал по Герберту Шилдту. Было задание написать программу которая выводит простые числа от 1 до 100. Сам я её не решил, а ответ посмотрел в конце. Прошу написать подробное объяснение задачи. Вот её решение:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
using namespace std;
 
int main()
{
 int a, b;
 bool m;
 
 for(a=1; a<100; a++)
    {
      
     m = true;
     
     for(b=2; b<=a/2; b++)
     
     if((a%b) == 0) m = false;
     
     if(m)
     cout << a << "\n";
    }
 return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.06.2011, 15:28     Найти натуральные числа
Посмотрите здесь:

C++ Найти все натуральные n-значные числа.
C++ Найти все натуральные числа...
Даны натуральные числа n и a(1), a(2), ... a(n) .. Найти максимальное простое число C++
C++ Найти все натуральные числа, не превосходящие заданного числа
a) Найти все натуральные числа, не превосходящие К C++
C++ Найти все натуральные числа a, b, с из интервала
C++ Найти все симметричные натуральные числа в промежутке от a до b
Найти все натуральные числа, не превосходящие заданного n C++
На отрезке [2, и] найти все натуральные числа C++
Найти все натуральные числа не превосходящие заданного C++
Найти все натуральные n-значные числа C++
Найти все симметричных натуральные числа в промежутке от А до В C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mimicria
return (true);
1956 / 1093 / 91
Регистрация: 19.04.2011
Сообщений: 2,344
09.06.2011, 15:32     Найти натуральные числа #2
Алгоритм подразумевает, что если число А не делится без остатка ни на одно другое число от 2 до А/2, то оно простое. Хотя должно до sqrt(A)
pito211
186 / 173 / 8
Регистрация: 22.03.2010
Сообщений: 612
09.06.2011, 15:37     Найти натуральные числа #3
Найти натуральные числа
Цитата Сообщение от Kudaev Посмотреть сообщение
простые числа от 1 до 100
название темы не соответсвует содержанию.

и проверять надо до корня от b а не b/2. Чё тут непонятного?
Kudaev
Сообщений: n/a
09.06.2011, 17:10     Найти натуральные числа #4
Цитата Сообщение от pito211 Посмотреть сообщение
название темы не соответсвует содержанию.

и проверять надо до корня от b а не b/2. Чё тут непонятного?
Сорри с названием темы. Просто что-то задумался. Меня конкретно интересует зачем к примеру мы после 1-го for присваевали m истину. И дальше не совсем понятно.
bearwoolfs
15 / 15 / 1
Регистрация: 10.01.2011
Сообщений: 275
09.06.2011, 17:17     Найти натуральные числа #5
Пока m=true; будет выполняться. Как вывидите //объявлена булева функция//.

Цитата Сообщение от Kudaev Посмотреть сообщение
for(b=2; b<=a/2; b++)
// b=2 будет выполняться пока b меньше а деленое на два )


Цитата Сообщение от Kudaev Посмотреть сообщение
if((a%b) == 0) m = false
и если а деленое на b равно 0 то m ложь
Yandex
Объявления
09.06.2011, 17:17     Найти натуральные числа
Ответ Создать тему
Опции темы

Текущее время: 20:32. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru