Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Не получается создать правильный цикл - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Создать иерархию наследования с абстрактным базовым классом http://www.cyberforum.ru/cpp-beginners/thread1802851.html
Доброго времени суток! Помогите, пожалуйста, сделать: 2) Создать абстрактный базовый класс с виртуальной функцией "Площадь". Создать произвольные классы "Прямоугольник", "Круг", "Прямоугольны...
C++ Итерационное вычисление частных производных доброго времени суток в задачах по численным методам столкнулся с необходимостью вычисления частных производных сами вычисления "в лоб" вопросов не вызывают, работаем строго по определению: ... http://www.cyberforum.ru/cpp-beginners/thread1802830.html
Открытие процессов visual studio 2012 C++
В общем, есть такой вот код: #include <iostream> #include <conio.h> #include <Windows.h> #include <cmath> #include <winbase.h> #include <TlHelp32.h> #include <time.h> #include <minwindef.h>
C++ Возможно ли?
Доброго времени суток! Есть несколько вопросов: 1.Возможно ли в консольном приложении, послать системе сообщение, которая отобразится(к примеру: написал таймер, хочу чтобы через определённое время...
C++ Как сделать так, что бы программа искала процессы http://www.cyberforum.ru/cpp-beginners/thread1802774.html
В общем, хочу сделать так, что бы программа видела процесс, который я ей напишу, типо как с окном, только уже процессы. Пример с окном: int main() { setlocale(0 , ""); for(;; Sleep(7)) {...
C++ Почему не работает код? можете подсказать почему мой код не работает? задача, из файла читаются футбольные команды и счета, а программа составляет турнирную таблицу #include <iostream> #include <fstream> #include... подробнее

Показать сообщение отдельно
Ghost Writter
52 / 52 / 14
Регистрация: 09.12.2015
Сообщений: 214
05.09.2016, 00:51
Pavel Rem, через рекурсию попробуй

https://code-live.ru/post/cpp-recursive-factorial-calculating/

Или можно сделать так:

M[K - 3][K - 1], M[K - 4][K - 1] и M[K - 5][K - 1] - это константы у тебя. Их вынесем за цикл.

Тогда в цикле останется:

i = 1 (G[0] * M[K - 3][K - 2]) (один элемент суммы)
i = 2 ((G[0] * M[K - 4][K - 2]) + (G[1] * M[K - 4][K - 3])) (два элемента суммы)
i = 3 три элемента суммы

Отсюда значит, что нужно найди формулу i-го элемента суммы. Получается:

G[i] * M[K - (количество элементов суммы + 2)][K - (i + 2)] (закономерность здесь достаточно просто найти)

Цикл в итоге:

Цикл i = 0, пока i < (количество элементов суммы), i++
Сумма += G[i] * M[K - (количество элементов суммы + 2)][K - (i + 2)];
Цикл конец;

После цикла отнимаешь сумму от константы.

Например:

G[2] = M[K - 4][K - 1] - сумма, где сумма:

первый элемент: G[0] * M[K - (2 + 2)][K - (0 + 2)] = G[0] * M[K - 4][K - 2]
второй элемент: G[1] * M[K - (2 + 2)][K - (1 + 2)] = G[1] * M[K - 4][K - 3]

Выражение получается: G[2] = M[K - 4][K - 1] - G[0] * M[K - 4][K - 2] + G[1] * M[K - 4][K - 3]

П.с. за псевдокод извиняюсь. Здесь я дилетант.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru