С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.94/47: Рейтинг темы: голосов - 47, средняя оценка - 4.94
0 / 0 / 0
Регистрация: 13.03.2016
Сообщений: 41

Вложенные циклы: вывести n первых простых чисел

13.03.2016, 20:51. Показов 9961. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дано натуральное число n. Простым называется число, имеет только два делителя - именно число и единицу. Вывести n первых простых чисел.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.03.2016, 20:51
Ответы с готовыми решениями:

Вывести на экран 10 первых простых чисел
Вывести на экран 10 первых простых чисел. Числа хранить в массиве. Проверку, является ли число простым, оформить в виде функции.

Циклы: вывести таблицу квадратов первых пяти целых положительных нечетных чисел
Написать программу, которая выводит таблицу квадратов первых пяти целых положительных нечетных чисел.

Вложенные циклы: вывести треугольник из звездочек
Написать программу которая выводит рисунок * ** * * **** с помощью вложенных циклов

20
70 / 70 / 52
Регистрация: 24.01.2013
Сообщений: 198
13.03.2016, 21:11
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
 
using namespace std;
int main(){
int n, i, j;
    cout << "Enter n: ";
    cin >> n;
    for (i = 1; i <= n; i++){
        for (j = 2; j <= i/2; j++){
            if (i%j == 0) break;
        }
        if (j > i/2) cout << i << " ";
    }
    cout << endl;
system("pause");
return 0;
}
1
2688 / 2260 / 244
Регистрация: 03.07.2012
Сообщений: 8,231
Записей в блоге: 1
13.03.2016, 21:27
вообще-то 1 не является простым числом
0
Диссидент
Эксперт C
 Аватар для Байт
27714 / 17332 / 3810
Регистрация: 24.12.2010
Сообщений: 38,978
13.03.2016, 21:53
skipaq, Это не первые n простых чисел, а простые числа, не превосходящие n
Еще замечание. в строке 9 лучше условие if (j*j<=i)
1
0 / 0 / 0
Регистрация: 13.03.2016
Сообщений: 41
13.03.2016, 21:54  [ТС]
кстати, выдает ошибку на 6 строке
0
70 / 70 / 52
Регистрация: 24.01.2013
Сообщений: 198
13.03.2016, 21:56
Лучший ответ Сообщение было отмечено Байт как решение

Решение

Прошу прощения, обманул, исправился
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
using namespace std;
int main(){
int n, i, j;
    cout << "Enter n: ";
    cin >> n;
   for (i = 3 ; n; i += 2){
            unsigned sq = sqrt(i);
            bool prime = true;
            for (j=2; j <= sq;++j)
                if (i%j==0) {
                        prime = false; 
                        break;
                }
            if (prime) {
                    cout << i << ' '; --n;
            }
        }
    cout << endl;
system("pause");
return 0;
}
1
0 / 0 / 0
Регистрация: 13.03.2016
Сообщений: 41
13.03.2016, 22:17  [ТС]
дальше выдает ошибку в 4 строке(
и я не очень понимаю етот пример, я делал программы по-другому, вместо count и cin, были printf и scanf...

Добавлено через 6 минут
skipaq, дальше выдает ошибку в 4 строке(
и я не очень понимаю етот пример, я делал программы по-другому, вместо count и cin, были printf и scanf...
0
70 / 70 / 52
Регистрация: 24.01.2013
Сообщений: 198
13.03.2016, 22:21
San9201, какую среду программирования используете ?
попробуйте прописать перед
C++
1
using namespace std;
такие строки:
C++
1
2
3
#include <iostream.h>
#include <math.h>
#include <Windows.h>
всё, что у Вас там есть, заменить
0
0 / 0 / 0
Регистрация: 13.03.2016
Сообщений: 41
13.03.2016, 22:24  [ТС]
skipaq,я использую Dev c++
ок, попробую

Добавлено через 2 минуты
skipaq, теперь выдает ошибку на на #include <iostream.h>
хех..
0
70 / 70 / 52
Регистрация: 24.01.2013
Сообщений: 198
13.03.2016, 22:27
San9201, тогда верните #include <iostream>,
и вообще, можно код ошибки?

и да, добавьте еще вверху директиву
C++
1
#include <Windows.h>
0
0 / 0 / 0
Регистрация: 13.03.2016
Сообщений: 41
13.03.2016, 22:31  [ТС]
skipaq, я сейчас пытаюсь переделать Вашу прогу под свой способ (заменяю cout и cin на printf и scanf)
не очень получаеться))
0
70 / 70 / 52
Регистрация: 24.01.2013
Сообщений: 198
13.03.2016, 22:34
San9201, ну, это Ваше право, раз не хотите ошибку светить =D
Код, который я вам дал выше - прекрасно работает на Dev-C (проверил).
Миниатюры
Вложенные циклы: вывести n первых простых чисел  
0
0 / 0 / 0
Регистрация: 13.03.2016
Сообщений: 41
13.03.2016, 22:39  [ТС]
skipaq, извините, я Вам сейчас покажу скрин..
0
0 / 0 / 0
Регистрация: 13.03.2016
Сообщений: 41
13.03.2016, 22:43  [ТС]
skipaq, вот
Миниатюры
Вложенные циклы: вывести n первых простых чисел  
0
0 / 0 / 0
Регистрация: 13.03.2016
Сообщений: 41
13.03.2016, 22:44  [ТС]
skipaq, мне бы ету программу нужно еще переделать под другой способ, Вы можете??
0
70 / 70 / 52
Регистрация: 24.01.2013
Сообщений: 198
13.03.2016, 22:52
San9201, так у вас программа начинается с

C++
1
using namespace std;
а должны быть еще такие штуки вначале:
C++
1
2
3
#include <iostream.h>
#include <math.h>
#include <Windows.h>
т.е. полный код программы такой:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream.h>
#include <math.h>
#include <Windows.h>
 
using namespace std;
int main(){
int n, i, j;
    cout << "Enter n: ";
    cin >> n;
   for (i = 3 ; n; i += 2){
            unsigned sq = sqrt(i);
            bool prime = true;
            for (j=2; j <= sq;++j)
                if (i%j==0) {
                        prime = false; 
                        break;
                }
            if (prime) {
                    cout << i << ' '; --n;
            }
        }
    cout << endl;
system("pause");
return 0;
}
Добавлено через 5 минут
Вот код с printf и scanf, хотя я разницы не вижу...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <stdio.h>
#include <math.h>
#include <Windows.h>
using namespace std;
int main(){
int n, i, j;
    printf("Enter n: ");
    scanf("%d",  &n);
   for (i = 3 ; n; i += 2){
            unsigned sq = sqrt(i);
            bool prime = true;
            for (j=2; j <= sq;++j)
                if (i%j==0) {
                        prime = false; break;
                }
            if (prime) {
                    printf("%d ", i);
                    --n;
            }
        }
    printf("\n");
system("pause");
return 0;
}
0
0 / 0 / 0
Регистрация: 13.03.2016
Сообщений: 41
13.03.2016, 22:55  [ТС]
skipaq, ето какое-то издевательство
выдает ошибку в 1-ой директиве, когда убераю ее, то выдет ошибку в 8-й строке(((
нужно переделать в другой способ, заменить
0
70 / 70 / 52
Регистрация: 24.01.2013
Сообщений: 198
13.03.2016, 23:00
San9201, ну вы пробуйте, в последнем сообщении я Вам дал два рабочих варианта с разными командами ввода/вывода.

Вам необходимо только вставить его в проект консольного приложения, и, прошу, выкладывайте или текст ошибки, или скрин, если будет отказываться работать.
0
0 / 0 / 0
Регистрация: 13.03.2016
Сообщений: 41
13.03.2016, 23:04  [ТС]
skipaq, просветите меня, что в етой программе не так, где я не так переправил..?
#include <stdio.h>
#include <math.h>
using namespace std;
int main()
{
int n, i, j;
printf("Enter n=");
scanf("%i", &n);
for (i = 3 ; n; i += 2)
{
unsigned sq = sqrt(i);
bool prime = true;
for (j=2; j <= sq;++j)
if (i%j==0)
{
prime = false;
break;
}
if (prime)
{
printf ("n=", --n);
}
}
printf ("endl=");
return 0;
}
0
70 / 70 / 52
Регистрация: 24.01.2013
Сообщений: 198
13.03.2016, 23:10
San9201, я в сообщении №16 выложил рабочую версию с printf и scanf.
Скопируйте ее к себе в проект. Просто скопируйте и замените всё что у вас есть в файле этим кодом.

И вам нужно подучить основы, ибо за такое
C++
1
printf ("n=", --n);
сразу можно ставить незачет
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.03.2016, 23:10
Помогаю со студенческими работами здесь

Задача на вложенные циклы: найти n первых простых чисел
Усл : Найти n первых простых чисел (число называется простым, если оно без остатка делится только на 1 и на само себя). Пожалуйста...

Вложеные циклы.Составить программу вывода на экран простых чисел из первых N натуральных чисел используя решето Эратосфена.
Составить программу вывода на экран простых чисел из первых N натуральных чисел используя решето Эратосфена. Решить задачу с...

Вывести столбики чисел, используя вложенные циклы
Вывести на экран числа, используя вложенные циклы: c)4321 21 1 d)12321 23432 34543 45654 Спасибо!

Вывести n первых простых чисел
static void SimpleNums(int arr) { foreach (var x in arr) Console.WriteLine(GetSimpleNum(x)); ...

Вывести на экран n первых простых чисел
Извянки что не в том разделе, у меня тут Паскаль, но уже создал тему Кратко. Есть готовое задание и готовое решение. Задание:...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru