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

Заменить все столбцы на столбец с минимальной суммой элементов (Класс) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ вызов метода у указателя на указатель на класс http://www.cyberforum.ru/cpp-beginners/thread785423.html
Доброго времени суток! Простите за, возможно, глупый вопрос и/или его неточную формулировку, но вот что есть: class parent { public: int smth; virtual void method () = 0; }
C++ Программа Пентамино Я написал рабочий код программы Пентамино, программа находит все решения по размещению 12 фигурок в область 60 клеток. Как ее улучшить работает медленно. Вот код: #include <iostream> #include <stdlib.h> #include <stdio.h> #include <iomanip> using namespace std; int main() {int x=1; http://www.cyberforum.ru/cpp-beginners/thread785401.html
C++ error C2078: слишком много инициализаторов при создании массива
Создаю текстовый массив. Выдает ошибку "error C2078: слишком много инициализаторов". При создании Int массива все нормально, а при создании екстового валит ошибку ( error C2078: слишком много инициализаторов ): char students = {"a", "b", "c"}; Что я наделал?)
C++ Исправьте массив
Решение проблемы нашел. Удалите тему пожалуйста.
C++ Использование оператора fgets http://www.cyberforum.ru/cpp-beginners/thread785373.html
Помогите решить задачу, пожалуйста, с использованием функции fgets. В командной строке программе передаются два числа. Из файла с текстом своей программы выполнить чтение соответствующих строк, найти в них самое длинное слово и поменять местами четные и нечетные символы этого слова.
C++ Стек (связный список). Нужно ли проверять на пустоту? Всем добра, у меня к Вам есть парочка вопросов о стеке, буду благодарен за помощь. Передо мной стояла задача: 1) Инициализировать стек; 2) Заполнить его значениями; 3) Добавить одно значение, через консоль; 4) Удалить значение, которое добавили. Вот мой код, он рабочий. #include "stdafx.h" подробнее

Показать сообщение отдельно
kuli4ok
31 / 31 / 3
Регистрация: 10.10.2012
Сообщений: 88
13.02.2013, 14:46     Заменить все столбцы на столбец с минимальной суммой элементов (Класс)
Если правильно понял задание, то так:
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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
#include <iostream>
#include <stdlib.h>
#include <time.h>
 
using namespace std;
 
class matrix
{
private:
    int ** mass;
    int n;
    int m;
public:
    matrix(int _n, int _m)
    {
        n = _n;
        m = _m;
        mass = new int*[n];
        for(int i=0; i<n; i++)
            mass[i] = new int[m];
    }
    ~matrix()
    {
        for(int i=0; i<n; i++)
            delete [] mass[i];
        delete [] mass;
    }
    matrix(const matrix& rhs)
    {
        n = rhs.n;
        m = rhs.m;
        mass = new int*[n];
        for(int i=0; i<n; i++)
            mass[i] = new int[m];
        for(int i=0; i<n; i++)
        {
            for(int j=0; j<n; j++)
                mass[i][j] = rhs.mass[i][j];
        }
    }
    void show()
    {
        for(int i=0; i<n; i++)
        {
            for(int j=0; j<m; j++)
            {
                cout << mass[i][j] << " ";
            }
            cout << "\n";
        }
    }
 
    void get_random(int l)
    {
        for(int i=0; i<n; i++)
        {
            for(int j=0; j<m; j++)
            {
                mass[i][j] = rand()%l;
            }
        }
    }
    void get_user()
    {
        for(int i=0; i<n; i++)
        {
            for(int j=0; j<m; j++)
            {
                cout << "Введите mass[" << i << "][" << j << ": ";
                cin >> mass[i][j];
            }
        }
    }
    int sum(int _m)
    {
        int res = 0;
        for(int i=0; i<n; i++)
        {
            res = res + mass[n-1][_m];
        }
        return res;
    }
    int min_sum()
    {
        int m_save;
        for(int i=1; i<m; i++)
        {
            if(sum(i)<sum(i-1))
                m_save = i;
        }
        return m_save;
    }
    void replacement(int min_m)
    {
        for(int i=0; i<n; i++)
        {
            for(int j=0; j<m; j++)
            {
                if(j == min_m)
                    continue;
                mass[i][j] = mass[i][min_m];
            }
        }
    }
};
 
int main()
{
    srand(time(0));
    int n, m;
    cout << "Введите количество строк и столбцов в матрице через пробел: ";
    cin >> n >> m;
    cout << "Каким методом хотите заполнить матрицу?\n1. Случайными числами\n0. С клавиатуры\nНомер: ";
    int choose;
    cin >> choose;
    matrix mass(n, m);
    if(choose == 1)
    {
        cout << "Укажите одним числом максимально возможное случайное число: ";
        cin >> m;
        mass.get_random(m);
    }
    else
        mass.get_user();
    cout << "Матрица до замены: \n";
    mass.show();
    mass.replacement(mass.min_sum());
    cout << "Матрица после замены: \n";
    mass.show();
    return 0;
 
Текущее время: 07:48. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru