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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
NAlt
0 / 0 / 0
Регистрация: 02.10.2014
Сообщений: 136
#1

Мультимножества, изменить вывод результата - C++

16.11.2014, 18:07. Просмотров 157. Ответов 0
Метки нет (Все метки)

Программа работает без ошибок, но нужно чтобы выдавало результат немного иначе m1*z1+m2*z2+m3*z3+...+mk*zk=n
{(m1,z1);(m2,z2);(m3,z3);...(mk,zk)}
n это сумма
m1 кол-во вхождений элемента z1 и т.д.

к примеру
n=5
тогда
{(1,3);(1,2)}
{(1,5)}
{(1,4);(1,1)}
{(2,2);(1,1)}


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
#include <stdlib.h>
#include <iostream>
#include <set>
#define N 100
using namespace std;
 
int main()
{
    setlocale (LC_ALL, "Russian");
    system ("color F0");
    int n,m[N],temp;
    for(int i=0;i<N;i++) m[i]=1;
 
    while(n<1 || n>N){
    cout<< "Введите значение для n от 1 до "<<N<<endl;
    cin>>n;
    if(n<1 || n>N) cout<< "Не допустимое число"<<endl;
    }
 
    temp=n-1;
 
    do
    {
        cout<<n<<"=";
        for(int i=0;i<n;i++)
        {
            if(i==n-1 || m[i+1]==0)
        {
                cout<<m[i]<<endl;
                break;}
            else cout<<m[i]<<"+";
        }
        if(m[temp]-1>=m[temp-1]+1 && temp>=1) m[temp]--,m[temp-1]++;
        else{
        m[temp-1]+=m[temp];
        m[temp--]=0;
        }
    }
    while(m[0]!=0);
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.11.2014, 18:07     Мультимножества, изменить вывод результата
Посмотрите здесь:

Что означают элементы шаблонов при объявлении мультимножества - C++
Добрый вечер уважаемые спецы. Не могли бы объяснить по понятнее, что означают данные элементы шаблонов при объявлении мультимножества: ...

Как изменить форму результата временного интервала? - C++
Подскажите,как в данной программе,результатом вычисления которой, является разность между двумя датами,сделать, чтобы на выходе было...

Вывод результата поиска - C++
Программа считывает из файла данные, потом осуществляет поиск по Id - номеру и должна вывести строку с Id, именем, фамилией и пр., но в...

Вывод дробного результата - C++
как сделать так,чтобы если получается дробный результат он и выводился,а не целое число? #include &lt;iostream&gt; using namespace std; ...

не правильный вывод результата - C++
Доброго времени суток! Возникла проблема мне нужно чтобы программа проверяла, представляют ли элементы введенного с клавиатуры массива...

ввод и вывод результата в файл - C++
double calc(int n, double sum, int a, int b, double p, double f) { if(n == 0) return sum; else{ sum += p...

Вывод результата быстрой сортировки - C++
Доброго времени суток, возникла проблема с быстрой сортировкой, не знаю как реализовать вывод отсортированного массива. Сам код: #include...

Вывод результата, начиная с 5-й строки. - C++
День добрый! Замучился вот с чем: Есть программа, выводящая на экран содержимое журнала системы для конкретного события. Мне надо надо...

Считывание строки и вывод результата - C++
Строка является корректным идентификатором, если она содержит только строчные или прописные латинские буквы, цифры, символ &quot;_&quot;, и не...

Вывод результата system в файл - C++
(C++; Visual Studio; консольное приложение) при попытке вывести в файл, например system(&quot;dir&quot;) результат выводится в консольное...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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