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

Рецепт странного супа

28.03.2015, 11:43. Показов 1392. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Рецепт странного супа выглядит следующим образом:
Возьмем четырехзначные десятичные натуральные числа и удалим из них простые числа. Оставшиеся числа упорядочим по четности количества делителей: сначала числа с нечетным количеством делителей, затем числа с четным количеством делителей. И, наконец, найдем сумму элементов получившейся последовательности с номерами от M-100 до M+100 ,
где M=Nmax /2 , если Nmax четное, и M=Nmax/2+1 , если Nmax нечетное.
Nmax – количество элементов в упорядоченной последовательности.
Эту самую сумму посолить, поперчить и употреблять по вкусу.
Значение суммы странного супа составит …
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.03.2015, 11:43
Ответы с готовыми решениями:

Создать класс Рецепт
Всем привет. Может кто помочь допилить код. А то сил моих больше нет а вемя поджимает. Реализовать класс “Рецепт”. Класс должен...

Вызов странного исключения в процессе отладке
Во время написание программы(точнее в процессе её отладке) возникла очень странная проблема. Вызывается странное исключение(текст...

Задача по ООП: классы Аптека/Лекарство/Рецепт
Привет. Дайте идею как решить. Использовать ли списки, если да, то как. Или можно использовать массивы объектов? Какие методы...

1
21 / 21 / 13
Регистрация: 28.04.2013
Сообщений: 85
28.03.2015, 14:20
Лучший ответ Сообщение было отмечено MuslimPalit как решение

Решение

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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
#include <iostream>
#include <vector>
 
const int N_BEGIN = 1000;
const int N_END = 10000;
 
int Prime(unsigned long a)
{
   unsigned long i1, i2, i3, i4, i5, i6, i7, i8, bound;
   if (a == 0 || a == 1)
      return 0;
   if (a == 2 || a == 3 || a == 5 || a == 7 || a == 11 || a == 13 || a == 17 || a == 19 || a == 23 || a == 29)
      return 1;
   if (a%2 == 0 || a%3 == 0 || a%5 == 0 || a%7 == 0 || a%11 == 0 || a%13 == 0 || a%17 == 0 || a%19 == 0 || a%23 == 0 || a%29 == 0)
      return 0;
   bound = sqrt((double)a);
   i1 = 31; i2 = 37; i3 = 41; i4 = 43; i5 = 47; i6 = 49; i7 = 53; i8 = 59;
   while (i8 <= bound && a%i1 && a%i2 && a%i3 && a%i4 && a%i5 && a%i6 && a%i7 && a%i8)
   {
       i1 += 30; i2 += 30; i3 += 30; i4 += 30; i5 += 30; i6 += 30; i7 += 30; i8 += 30;
   }
   if (i8 <= bound ||
      i1 <= bound && a % i1 == 0 ||
      i2 <= bound && a % i2 == 0 ||
      i3 <= bound && a % i3 == 0 ||
      i4 <= bound && a % i4 == 0 ||
      i5 <= bound && a % i5 == 0 ||
      i6 <= bound && a % i6 == 0 ||
      i7 <= bound && a % i7 == 0)
         return 0;
   return 1;
}
 
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()
{
    std::vector<int> odd_dividers;
    std::vector<int> no_odd_dividers;
    for( int i = N_BEGIN; i < N_END; ++i )
    {
        if( Prime(i) ) continue; // простые числа
 
        if(  dividers(i).size() & 1 )
        {
            no_odd_dividers.push_back( i );
        }
        else
        {
            odd_dividers.push_back( i );
        }
    }
 
    std::vector<int> result;
    for( const int& tmp : no_odd_dividers )
    {
        result.push_back( tmp );
    }
    for( const int& tmp : odd_dividers )
    {
        result.push_back( tmp );
    }
 
    int max = result.size();
 
    int m = (max & 1)? max / 2 + 1 : max / 2;
 
    int summ = 0;
    for( int i = m - 100; i <= m + 100; ++i)
    {
        summ += result[i];
    }
 
    std::cout << summ;
 
    return 0;
}
ответ у меня получился 589381, хз прально нет
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.03.2015, 14:20
Помогаю со студенческими работами здесь

Пользовательская функция работает не так, как ожидается: найти причины странного поведения функции
Ребята помогите, пожалуйста. Создаю функцию суммы дробных чисел, но она ничего не возвращает, экран пустой. Я знаю, что туплю, но все же. ...

Найти причины странного поведения IDE Dev C++: код не компилируется, а IDE ошибок не выдает
#include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;conio.h&gt; using namespace std; int main() { int x, i=26; const int a=1,...

Не вижу окна с кодом (нет окна редактирования): найти причины странного поведения программы
Создаю проект, а кроме синего экрана ничего больше нет, не знаю, что делать. Прочла здесь же про образователь решений(типа должен быть...

Задача, на проверку "Странного умножения"
Ребят, подскажите как написать часть с проверкой(Странное это умножение или нет)

Знатоки супа и регулярок подскажите
хочу распарсить в целях тренировки сайт с вакансиями, сразу импортирую нужные модулиfrom bs4 import BeautifulSoup import requests ...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Управление камерой с помощью скрипта 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-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
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. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru