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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Дан массив размера N. Найти количество участков, на которых его элементы убывают http://www.cyberforum.ru/cpp-beginners/thread1302206.html
#include "stdafx.h" #include <iostream> #include <conio.h> #include <string> #include <iomanip> using namespace std; int _tmain(int argc, _TCHAR* argv) {
C++ В массиве найти минимальный положительный и максимально отрицательный элемент и вычисляет их следующее значени Очень-очень-очень срочно надо сделать такую прогу, а я не совсем понимаю как её делать. Помогите, пожалуйста. Если можно, то объясните подробно как делать эту прогу и сам код. Буду крайне благодарен!)) Даны массивы следующих типов данных: Long = {},double ={},float = {}, int ={},short ={},long long ={}. Разработать программу которая в каждом из представленных массивов находит минимальный... http://www.cyberforum.ru/cpp-beginners/thread1302204.html
Разбить изображение на пазлы C++
Случайно нашел задание разрезать изображение на пазлы(сохранить как отдельные картинки) используя STL,делать не собираюсь:D, но стало интересно как это вообще реализовать?
C++ Неоднозначный вызов перегруженной функции (sqrt)
Вот в программе написано: int n, b; n = sqrt(b); // <-- Неоднозначный вызов перегруженной функции... Может формат записи не тот ?
C++ Метод конечных разностей http://www.cyberforum.ru/cpp-beginners/thread1302198.html
#include "stdafx.h" #include"iostream" #include"cmath" using namespace std; int main() { int a=0;
C++ Удаление элементов из списка struct List { int data; List *next; }; typedef List* ListPtr; void InsertHead(ListPtr & h, int a); void showList(ListPtr h); void deletList(ListPtr & h, int a); подробнее

Показать сообщение отдельно
NAlt
0 / 0 / 0
Регистрация: 02.10.2014
Сообщений: 136

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

16.11.2014, 18:07. Просмотров 154. Ответов 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);
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 03:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru