Форум программистов, компьютерный форум, киберфорум
MathCAD
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/21: Рейтинг темы: голосов - 21, средняя оценка - 5.00
Эксперт по математике/физике
2616 / 2230 / 684
Регистрация: 29.09.2012
Сообщений: 4,577
Записей в блоге: 13

Разложение числа в сумму степеней

05.03.2019, 22:20. Показов 4640. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Разрожение числа в сумму степеней натуральных чисел с одинаковыми натуральными показателями p имеет вид

https://www.cyberforum.ru/cgi-bin/latex.cgi?n=\sum\limits_{k=1}^m a_k\cdot k^p

Потребуем, чтобы коэффициенты ak могли принимать значения только 0 или 1. Это значит, что каждая степень может войти в сумму не более одного раза.
Задача. 1) Написать программу, которая для натурального n находит все разложения, если они есть.
2) Написать программу, которая для натурального показателя p находит первые N натуральных чисел, разлагающихся по степеням p.
Пример 1. n=1024
https://www.cyberforum.ru/cgi-bin/latex.cgi?1024=1^2+3^2+5^2+6^2+7^2+8^2+9^2+10^2+11^2+12^2+13^2+15^2<br />
                           1024=4^5<br />
                           1024=2^{10}
Пример 2. р=3, N=5
https://www.cyberforum.ru/cgi-bin/latex.cgi?1. \ \ 1=1^3<br />
           2. \ \  8= 2^3<br />
           3. \ \  9=1^3+2^3<br />
           4. \ \ 27=3^3<br />
           5. \ \ 28= 1^3+3^3
Пример 3. Число 7 не разлагается в сумму степеней нат. чисел с одинаковыми натуральными показателями
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.03.2019, 22:20
Ответы с готовыми решениями:

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

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

Разложение натурального числа в произведение степеней с простыми основаниями и натуральными показателями
Разложение натурального числа в произведение степеней с простыми основаниями и натуральными показателями?

10
Эксперт по математике/физике
2616 / 2230 / 684
Регистрация: 29.09.2012
Сообщений: 4,577
Записей в блоге: 13
19.03.2019, 20:51  [ТС]
Цитата Сообщение от Symon Посмотреть сообщение
Разрожение числа в сумму степеней
Никто не берется. Не интересно, или кишка тонка? Тогда, как говорится, помоги себе сам.
Вот как это можно сделать
Кликните здесь для просмотра всего текста
2
1833 / 1027 / 192
Регистрация: 24.02.2013
Сообщений: 3,084
Записей в блоге: 12
21.03.2019, 02:13
У меня не считает

Лишние скобки убрал, убрал n в trace - не работает
Миниатюры
Разложение числа в сумму степеней  
0
 Аватар для nick55782012
2746 / 1922 / 954
Регистрация: 25.12.2016
Сообщений: 5,464
21.03.2019, 07:41
а,у меня считает
Миниатюры
Разложение числа в сумму степеней  
0
Эксперт по математике/физике
2616 / 2230 / 684
Регистрация: 29.09.2012
Сообщений: 4,577
Записей в блоге: 13
21.03.2019, 07:48  [ТС]
Цитата Сообщение от Nacuott Посмотреть сообщение
Лишние скобки убрал
Набрано все правильно. Строку с trance можно всю убрать. Хотя это не влияет на работоспособность. Не знаю в чем дело.
Может версия маткада виновата. У меня 14-я. Пришлите архив вашего файла. Попробую запустить на своем компе.
0
1833 / 1027 / 192
Регистрация: 24.02.2013
Сообщений: 3,084
Записей в блоге: 12
21.03.2019, 20:45
Symon , файл сбросил в личку.
0
Эксперт по математике/физике
2616 / 2230 / 684
Регистрация: 29.09.2012
Сообщений: 4,577
Записей в блоге: 13
21.03.2019, 22:40  [ТС]
Цитата Сообщение от Nacuott Посмотреть сообщение
файл сбросил в личку
Ваш файл работает. Попробуйте заменить строку с ошибкой заменить чем нибудь эквивалентным.
0
1833 / 1027 / 192
Регистрация: 24.02.2013
Сообщений: 3,084
Записей в блоге: 12
22.03.2019, 00:01
Symon, вместо <q<-q+1> поставил <k> - заработало , но дает еще много нулевых строк.

Добавлено через 9 минут
Symon, в вашей программе q не определено, т.е. вместо q можно было записать любую букву(символ). Неясно-как это так?
0
Эксперт по математике/физике
2616 / 2230 / 684
Регистрация: 29.09.2012
Сообщений: 4,577
Записей в блоге: 13
22.03.2019, 09:56  [ТС]
Цитата Сообщение от Nacuott Посмотреть сообщение
в вашей программе q не определено,
Если какой то счетчик внутри цикла (здесь это q) первоначально не определен, то он первоначально по умолчанию считается равным нулю. Поэтому если такое начальное значение счетчика устраивает, то его можно перед началом не определять.
Пример. У вас ORIGIN=1. Индексация начинается с 1. значение счетчика q перед циклом while не определен. По умолчанию он равен 0. Тогда перед присвоением элементу вектора v некоторого значения в начале надо увеличить значение q: q<- q+1.
Это можно сделать отдельной строкой, а можно совместить с командой присвоения элементу вектора некоторого значения (для сокращения кода) так:
vq<- q+1 <- a
Возможно маткад 11 такому фокусу совмещения не приучен. Тогда делайте изменение значения счетчики отдельной строкой.

Внимание!. Использование первоначального значения счетчика по умолчанию может подложить вам свинью. Если перед вашей программой у вас еще есть что то, где используется это же имя счетчика (q), то внутри программы q будет равным тому значению, которое установилось перед обращением к вашей программе и все может пойти на смарку. Чтобы избежать этого, конечно, в каждой приличной программе перед while нужно определить начальное значение счетчика. У меня этого сделано не было. Получается, что я подложил вам свинью. Пардон!
Вот исправленный вариант
Кликните здесь для просмотра всего текста
0
1833 / 1027 / 192
Регистрация: 24.02.2013
Сообщений: 3,084
Записей в блоге: 12
22.03.2019, 19:29
В 11 маткаде нули не уходят.
Нужно писать отдельный код для удаления нулей.
Миниатюры
Разложение числа в сумму степеней  
0
Эксперт по математике/физике
2616 / 2230 / 684
Регистрация: 29.09.2012
Сообщений: 4,577
Записей в блоге: 13
23.03.2019, 08:55  [ТС]
Цитата Сообщение от Nacuott Посмотреть сообщение
В 11 маткаде нули не уходят. Нужно писать отдельный код для удаления нулей.
Можно использовать встроенную функцию filterNaN, если она есть в 11-й версии.
Заменяем нули пустышкой NaN и применяем эту ф-цию. Есть и другие варианты
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.03.2019, 08:55
Помогаю со студенческими работами здесь

Выведите сумму степеней числа n от нулевой до k включительно
Пользователь вводит натуральные числа n и k. Выведите сумму степеней числа n от нулевой до k включительно. Замечание: пользоваться...

Вычислить сумму чисел между k ым и n ым элементами последовательности степеней числа 3: 1392781…
Даны натуральные числа k и n. Вычислить сумму чисел между k-ым и n-ым элементами последовательности степеней числа 3: 1392781…, но сами...

Разложение числа на сумму квадратов
Разложите число 125674 на сумму квадратов натуральных чисел так, чтобы количество слагаемых было минимальным. В ответе укажите найденное...

Разложение числа на сумму квадратов
Дано натуральное число. Надо представить его в виде суммы квадратов натуральных чисел. Количество слагаемых должно быть минимально. В...

Разложение числа на сумму простых чисел
подскажите плз алгоритм)


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
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-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru