|
0 / 0 / 0
Регистрация: 10.10.2020
Сообщений: 28
|
|
Найти числа имеющие ровно два различных натуральных делителя10.10.2020, 11:46. Показов 12618. Ответов 19
Метки нет (Все метки)
Здравствуйте! Готовлюсь к КЕГЭ 2021 и пишу в основном на с++.Т.к все разборы задач на паскале или питоне, то решила обратиться к вам т.к не могу решить задачу
Напишите программу, которая ищет среди целых чисел, принадлежащих числовому отрезку [174457; 174505], числа, имеющие ровно два различных натуральных делителя, не считая единицы и самого числа. Для каждого найденного числа запишите эти два делителя в две соседних столбца на экране с новой строки в порядке возрастания произведения этих двух делителей. Делители в строке также должны следовать в порядке возрастания. Например, в диапазоне [5; 9] ровно два целых различных натуральных делителя имеют числа 6 и 8, поэтому для этого диапазона вывод на экране должна содержать следующие значения: 2 3 2 4 Пыталась сделать через массив, но выводит что-то странное вместо вот этого 3 58153 7 24923 59 2957 13 13421 149 1171 5 34897 211 827 2 87251 Помогите пожалуйста, буду очень благодарна.
0
|
|
| 10.10.2020, 11:46 | |
|
Ответы с готовыми решениями:
19
найти все целые числа от 1 до 300, имеющие ровно 5 делителей У скольких чисел от 1 до 2016 включительно ровно четыре натуральных делителя? (Включая 1 и само число) |
|
319 / 216 / 114
Регистрация: 14.05.2020
Сообщений: 890
|
||||||
| 10.10.2020, 14:58 | ||||||
|
Alexandra1234A,
1
|
||||||
|
377 / 228 / 79
Регистрация: 24.11.2009
Сообщений: 695
|
||||||||||||||||||
| 10.10.2020, 15:24 | ||||||||||||||||||
|
В первом приближении, вам нужно для каждого числа из диапазона посчитать количество простых делителей и вывести те числа, где количество простых делителей равно 2.
Но вы можете задуматься, что делители любого числа лежат в диапазоне 2.. sqrt(number), и можно значительно уменьшить количество итераций в get_prime_delimeters и is_prime ограничив поиск делителей этим диапазоном. Так же, если проведена проверка делимости на 2, нет смысла проверять делимость на 4, 6, 8 и так далее - после чего сокращаете цикл еще в два раза используя вместо iterator++ приращение iterator += 2; Убедившись, что все ваши изменения выдают прекрасные результаты, вы приходите к мысли, что вычислять делители и проверять их на простоту каждый раз вовсе не обязательно, и можно один раз посчитать все простые от 2 до sqrt(b) и искать делители чисел в get_prime_delimeters только среди вычисленных простых. И это будет третьим приближением. В четвертом приближении выяснится, что вы решаете олимпиадные задачи и не укладываетесь по времени, потому целесообразно массив простых не вычислять (по крайней мере для простых больших 10000) а забить в программу скачав посчитанные значения из интернета. В пятом вы захотите оптимизировать не алгоритм, а сам код - уберете передачу векторов копированием заменив на возврат ссылки или сразу указателей на пару простых из массива. А может быть добавите кеширование для близких к sqrt(b) значений простых.
1
|
||||||||||||||||||
|
0 / 0 / 0
Регистрация: 10.10.2020
Сообщений: 28
|
|
| 10.10.2020, 15:25 [ТС] | |
|
Спасибо конечно, но можно как-то попроще(на примитивном через массив например) написать код т.к знаю с++ на уровне школы и библиотеку vector не понимаю.
0
|
|
|
319 / 216 / 114
Регистрация: 14.05.2020
Сообщений: 890
|
|
| 10.10.2020, 15:36 | |
|
Alexandra1234A, vector пользовательский тип данных, обвёртка обычного динамического массива. С обычным массивом будет много мороки
0
|
|
|
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
|
|||||||
| 10.10.2020, 15:41 | |||||||
Сообщение было отмечено Alexandra1234A как решение
Решение
2
|
|||||||
|
0 / 0 / 0
Регистрация: 10.10.2020
Сообщений: 28
|
|
| 10.10.2020, 15:50 [ТС] | |
|
спасибо огромное вам!
0
|
|
|
377 / 228 / 79
Регистрация: 24.11.2009
Сообщений: 695
|
||||||||||||
| 10.10.2020, 16:27 | ||||||||||||
|
На егэ вы будете соревноваться с ребятами, которые будут использовать питон. Они будут иметь динамические массивы, отображения, итераторы и строки из коробки и будут применять их не задумываясь о том, что скрыто "под капотом". Вы же собираетесь байтики перекладывать и вручную памятью управлять. Вам нужно или отказаться от си-плюс-плюс в качестве рабочего инструмента или выйти из зоны комфорта и посмотреть четыре ролика по 15 минут про vector, map, string, и какие-то базовые вещи из algorithm, либо готовиться обтекать с 30 баллами по информатике. Добавлено через 19 минут Чтоб вы понимали о чем идет речь. В файле большие числа через запятую. Их нужно прочитать и что-то с ними сделать, сложить, например. Это божественный СИ на котором вы пытаетесь писать:
Добавлено через 15 минут Не по теме: что-то бамбануло у меня - преподавателям которые детей учат программированию используя си нужно по жопе указкой надавать.
0
|
||||||||||||
| 10.10.2020, 16:31 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 10.10.2020
Сообщений: 28
|
|
| 10.10.2020, 16:31 [ТС] | |
|
Спасибо, попытаюсь изучить python
0
|
|
| 10.10.2020, 17:04 | |
|
0
|
|
| 10.10.2020, 17:20 | |
|
0
|
|
|
96 / 69 / 27
Регистрация: 26.08.2020
Сообщений: 360
|
||||||
| 10.10.2020, 17:23 | ||||||
0
|
||||||
| 10.10.2020, 19:21 | ||||
|
Не по теме:
0
|
||||
| 10.10.2020, 19:41 | |
|
0
|
|
| 10.10.2020, 20:19 | |||
|
Не по теме:
2) Он не оптимальный. 3) Этот код не опровергает мое утверждение.
0
|
|||
| 10.10.2020, 20:42 | ||||||
|
Не по теме:
0
|
||||||
| 10.10.2020, 21:34 | |
|
0
|
|
| 10.10.2020, 22:08 | |
|
Не по теме: Vladimir., если в двух словах Вы говорите НЕЛЬЗЯ (написать код попроще) хотя уже примерно час назад код попроще мной уже сброшен
0
|
|
| 10.10.2020, 23:11 | |
|
0
|
|
| 10.10.2020, 23:11 | |
|
Помогаю со студенческими работами здесь
20
Найти вероятность того, что выпадут ровно 2 различных числа
Найти количество различных чисел, которые можно получить из числа ровно за C команд
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем.
. . .
|