Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/21: Рейтинг темы: голосов - 21, средняя оценка - 4.86
 Аватар для MuslimPalit
30 / 6 / 9
Регистрация: 23.03.2015
Сообщений: 508

Определить кол-во чисел, имеющих ровно 5 делителей, среди 1-го миллиона натуральных чисел

17.03.2016, 18:50. Показов 4155. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Среди первого миллиона десятичных натуральных чисел количество чисел, имеющих ровно пять делителей (единица и само число не учитываются), составит ___
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.03.2016, 18:50
Ответы с готовыми решениями:

Определить количество чисел, имеющих ровно пять делителей, среди первого миллиона натуральных чисел
Среди первого миллиона десятичных натуральных чисел количество чисел, имеющих ровно пять делителей (единица и само число не учитываются),...

Используя процедуру нахождения количества натуральных делителей числа, определить у какого из трех чисел натуральных делителей больше
Используя процедуру нахождения количества натуральных делителей числа, определить у какого из трех чисел натуральных делителей больше

Используя процедуру нахождения количества натуральных делителей числа, определить у какого из трех чисел натуральных делителей больше
Используя процедуру нахождения количества натуральных делителей числа, определить у какого из трех чисел натуральных делителей больше

7
Объявлятель переменных
 Аватар для SpBerkut
1225 / 411 / 321
Регистрация: 24.09.2011
Сообщений: 1,279
17.03.2016, 19:37
C++
1
2
3
int main() {
    cout << 124465;
}
0
 Аватар для MuslimPalit
30 / 6 / 9
Регистрация: 23.03.2015
Сообщений: 508
17.03.2016, 19:42  [ТС]
SpBerkut, как бы не так?
0
Объявлятель переменных
 Аватар для SpBerkut
1225 / 411 / 321
Регистрация: 24.09.2011
Сообщений: 1,279
17.03.2016, 19:59
Цитата Сообщение от MuslimPalit Посмотреть сообщение
как бы не так?
С чего бы это вдруг? Значение, выданное алгоритмом, совпадает с данными OEIS для числа 100000 (11185). Не вижу поводов не верить этому алгоритму, когда он утверждает, что в первом миллионе натуральных чисел ровно 124465 имеют строго по 5 простых делителей (возможно одинаковых). Речи о том, что делители должны быть разными, не было.
0
 Аватар для MuslimPalit
30 / 6 / 9
Регистрация: 23.03.2015
Сообщений: 508
17.03.2016, 20:04  [ТС]
SpBerkut, а код?

Добавлено через 41 секунду
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
const int N = 1000000;
 
// Функция, возвращающая вектор делителей переданного ей числа
std::vector<unsigned> dividers(unsigned n)
{
    // Если проверяем 0 (хотя в задании и сказано, что проверяются натуральные
    // числа, этот случай тоже учтён) - возвращаем пустой вектор
    if (n == 0)
        return std::vector<unsigned>();
 
    // Вектор делителей (пока содержит только само число)
    std::vector<unsigned> divs(1, n);
 
    // Если проверяем 1 - выводим уже готовый вектор, содержащий только саму 1
    if (n == 1)
        return divs;
 
    // Идём по всем числам от n / 2 до 1 и проверяем каждое, является ли оно
    // делителем n
    for (unsigned d = n / 2; d > 1; --d)
        // Проверка на делимость нацело
        if (n % d == 0)
        {
            // Если очередное число является делителем, добавляем его в вектор
            divs.push_back(d);
            if( divs.size() > 5 )
            {
                divs.clear();
                return divs;
            }
        }
 
    // Добавляем делитель любого из чисел - 1
    //divs.push_back(1);
 
    // Возвращаем найденные делители
    return divs;
}
 
int main()
{
    int result = 0;
    for( int i = 0; i < N; ++i )
    {
        if( dividers(i).size() == 5 ) ++result;
    }
 
    std::cout << result;
    return 0;
}
Добавлено через 28 секунд
результат 43870

Добавлено через 10 секунд
результат 43870
0
Объявлятель переменных
 Аватар для SpBerkut
1225 / 411 / 321
Регистрация: 24.09.2011
Сообщений: 1,279
17.03.2016, 20:19
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
int Omega(int n) {
    int r = 0;
    while (!(n%2)) {
        r++; 
        n/=2;
    }
    int d = 3;
    while (n>1) {
        if (!(n%d)) {
            r++;
            n/=d;
        }
        else 
            d+=2; // Тут можно было заморочиться с массивом простых чисел, но мне лениво, если честно.
    }
    return r;
}
 
int NumOfOmega(int n, int d) {
    int r = 0;
    for (int i = 1; i <= n; i++)
        if (Omega(i) == d) r++;
    return r;
}
 
int main()
{
    cout << NumOfOmega(1000000,5);
    return 0;
}
Наши алгоритмы не сходятся во мнениях. При числе 100 мой выдаёт 4 значения: 32 (2*2*2*2*2), 48 (2*2*2*2*3), 72 (2*2*2*3*3) и 80 (2*2*2*2*5). Твой же выдаёт 16. Или я не так понял задание, или у тебя где-то ошибка.
0
 Аватар для MuslimPalit
30 / 6 / 9
Регистрация: 23.03.2015
Сообщений: 508
17.03.2016, 20:43  [ТС]
SpBerkut, т.е. твой код выше подтвердил значение 124465
0
Объявлятель переменных
 Аватар для SpBerkut
1225 / 411 / 321
Регистрация: 24.09.2011
Сообщений: 1,279
17.03.2016, 21:09
Цитата Сообщение от MuslimPalit Посмотреть сообщение
т.е. твой код выше подтвердил значение 124465
Да. Правда считает секунд 40. Проверь на 100000. Будет 11185. Это же значение можно увидет в списке OEIS, ссылку на который я давал выше.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.03.2016, 21:09
Помогаю со студенческими работами здесь

Среди N первых натуральных чисел подсчитать кол-во чисел, кратных 5 и 3 (Массив)
Ребят помогите пожалуйста очень надо буду благодарен. Среди N первых натуральных чисел подсчитать кол-во чисел, кратных 5 и 3

Циклы. Среди натуральных чисел от 1 до 100 найти все пары чисел, для которых их сумма равна их произведению и кол-во таких пар.
Среди натуральных чисел от 1 до 100 найти все пары чисел, для которых их сумма равна их произведению и кол-во таких пар. Если таких чисел...

Найти n идущих подряд натуральных чисел, среди которых ровно k простых
Здравствуйте, помогите пожалуйста с задачей, никак не могу понять, что тут требуется сделать. ну и не знаю как из файла считать в...

Среди n введенных чисел определить кол-во чисел равных 0 или кратных 10.
Составить программу, которая среди n введенных чисел считает кол-во чисел равных 0 или кратных 10 с использованием всех видов циклов

Среди натуральных чисел имеющих больше цифр чем n найти наименьшее
e-olymp 8901 (выдает 90% не могу понять почему) (Входные данные #1 7 Выходные данные #1 10 ) #include &lt;iostream&gt; ...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru