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

Получить в порядке возрастания N первых натуральных чисел, которые не делятся ни на какие простые числа, кроме 2, 3 и 5

04.06.2013, 09:30. Показов 2714. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дано натуральное число N. Получить в порядке возрастания N первых натуральных чисел, которые не делятся ни на какие простые числа, кроме 2, 3 и 5.



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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#include <iostream>
#include <conio.h>
#include <math.h>
 
using std::cout;
using std::endl;
using std::cin;
 
// функция, проверяющая, простое число или нет
int primeNumber(int number)
{
    for (int i = 2; i < number; i++)
    {
        if (number%i == 0)
            return 0;
        if ((i == number) || (i > sqrt((double)number)))
            return 1;
    }
    return 1;
}
 
int main()
{
    int n;
    cout << "Input n: ";
    cin >> n;
 
    // подсчитываем кол-во элементов для массива простых чисел, не включающего 2, 3 и 5
    int count = 0;
    for(int i = 2; i <= n; i++)
    {
        if ((primeNumber(i) == 1) && (i != 2) && (i != 3) && (i != 5))
            count++;
    }
 
    // выделяем для него память
    int *arr = new int[count];
 
    // заполняем его
    for(int i = 2, j = 0; i <= n; i++)
    {
        if (primeNumber(i) == 1)
        {
            if ((i != 2) && (i != 3) && (i != 5))
            {
                arr[j] = i;
                j++;
            }
        }
    }
 
    // получаем в порядке возрастания n первых натуральных чисел,
    // которые не делятся ни на какие простые числа, кроме 2, 3 и 5
    cout << "Result: " << endl;
    for(int i = 1; i < n; i++)
    {
        if ((i%2 == 0) || (i%3 == 0) || (i%5 == 0))
        {
            for(int j = 0; j < count; j++)
            {
                if (i%arr[j] != 0)
                {
                    cout << i << ' ';
                    break;
                }
            }
        }
    }
 
    delete [] arr;
    _getch();
    return 0;
}


там неправильно выводит число 21 не должно вывести помогите пожалуйста

Добавлено через 15 минут
кто нибудь помогите пожалуйста срочно нужно(
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.06.2013, 09:30
Ответы с готовыми решениями:

Дано натуральное n. Получить в порядке возрастания n первых натуральных чисел, которые не делятся ни на какие простые числа, кроме 2, 3 и 5
Дано натуральное n. Получить в порядке возрастания n первых натуральных чисел, которые не делятся ни на какие простые числа, кроме 2, 3 и...

Дано натуральное число n. Получить в порядке возрастания n первых натуральных чисел, которые не делятся ни на какие простые числа, кроме 2, 3 и 5
Дано натуральное число n. Получить в порядке возрастания n первых натуральных чисел, которые не делятся ни на какие простые числа, кроме 2,...

дано натуральное число n. получить в порядке возрастания n первых натуральных чисел, которые не делятся ни на какие простые числа кроме 2, 3 и 5
#include&lt;iostream&gt; #include&lt;vector&gt; #include&lt;cstdlib&gt; using namespace std; int main() {int i,n,k; cout&lt;&lt;&quot;n: &quot;&lt;&lt;endl; ...

7
 Аватар для Ternsip
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
04.06.2013, 12:24
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
int main() {
    int n;
    scanf("%d", &n);
    for (int i = 1; n > 0; ++i) {
        int c = i;
        while (c > 6 && (c%2 == 0 || c%3 == 0 || c%5 == 0)) {
            if (c%2 == 0) c /= 2;
            if (c%3 == 0) c /= 3;
            if (c%5 == 0) c /= 5;
        }
        if (c < 7) {
            printf("%d ", i);
            --n;
        } 
    }
    return 0;
}
Добавлено через 11 минут
Илюза19, Доказательство : Любое число можно факторизовать простыми числами => если не удалось факторизовать число простыми 2, 3 и 5 => делится наше число на другое простое.
2
0 / 0 / 0
Регистрация: 21.05.2013
Сообщений: 41
04.06.2013, 14:45  [ТС]
Ternsip, ошибка здесь: scanf("%d", &n);
0
 Аватар для Ternsip
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
04.06.2013, 15:06
Илюза19, детский сад. Напиши std::cin >> n; вместо scanf и вместо printf std::cout << i << " ";
Ну и раз такие проблемы возникают тогда не забудьте про _getch();
0
0 / 0 / 0
Регистрация: 21.05.2013
Сообщений: 41
04.06.2013, 15:15  [ТС]
Ternsip, там нужно вывести только те числа которые делятся на 2 3 5 а он все подряд выводит
0
 Аватар для Ternsip
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
04.06.2013, 15:17
Илюза19, напишите какие числа не подходят. Я считаю всё верно.
у меня вот так выводит :
Кликните здесь для просмотра всего текста
1 2 3 4 5 6 8 9 10 12 15 16 18 20 24 25 27 30 32 36 40 45 48 50 54 60 64 72 75 80 81 90 96 100 108 120 125 128 135 144 150 160 162 180 192 200 216 225 240 243 250 256 270 288 300 320 324 360 375 384 400 405 432 450 480 486 500 512 540 576 600 625 640 648 675 720 729 750 768 800 810 864 900 960 972 1000 1024 1080 1125 1152 1200 1215 1250 1280 1296 1350 1440 1458 1500 1536
для первых 100
тут не все подряд
0
0 / 0 / 0
Регистрация: 21.05.2013
Сообщений: 41
04.06.2013, 15:21  [ТС]
Ternsip, напишите лучше код если вас это не затруднит я врод все правильно сдел но не компилир
0
 Аватар для Ternsip
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
04.06.2013, 15:23
Илюза19, выше уже был приведён рабочий код, разработанный в среде Microsoft Visual studio 2012 c++. Не позорьтесь. Надеюсь, что вы хотя бы среду сами сможете настроить.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.06.2013, 15:23
Помогаю со студенческими работами здесь

Получить N первых натуральных чисел, которые не делятся без остатка на простые числа (кроме 2, 3 и 5)
Дано натуральное число N. Получить в порядке возрастания N первых натуральных чисел, которые не делятся без остатка ни на какие простые...

Дано натуральное число N. Найти сумму первых n натуральных чисел, которые не делятся ни на какие простые числа, кроме 2, 3 и 5
Дано натуральное число N. Найти сумму первых n натуральных чисел, которые не делятся ни на какие простые числа, кроме 2, 3 и 5.

Дано натуральное число N. Получить в порядке возрастания N первых натуральных чисел
1. Дано натуральное число N. Получить в порядке возрастания N первых натуральных чисел, которые не делятся ни на какие простые числа, кроме...

Файл целых положительных чисел. Сначала располагаются числа, которые делятся на 3 в порядке возрастания, потом
Файл целых положительных чисел. Сначала располагаются числа, которые делятся на 3 в порядке возрастания, потом остальные по убыванию....

Найти сумму первых n натуральных чисел которые делятся на 3 и на 5
Найти сумму первых n натуральных чисел которые делятся на 3 и на 5 Определить сумму элементов массива,расположенных до минимального по...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а привычная функция main(). . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru