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

Действительная матрица n * m. Сортировать строки в порядке убывания значений первых элементов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Два файла с символами: получить номер первого элемента, в котором эти файлы отличаются http://www.cyberforum.ru/cpp-beginners/thread1137190.html
дано два файла с одинаковым количеством компонент, компонентами которого являются символы выяснить совпадают ли попарно их компоненты, если нет то получить номер первого элемента, в котором эти файлы отличаются. С++
C++ Переставить элементы в обратном порядке(С++) Напишите программу, которая переставляет элементы массива в обратном порядке без использования дополнительного массива. Программа должна считать массив, поменять порядок его элементов, затем вывести результат (просто вывести элементы массива в обратном порядке – недостаточно!). Формат входных данных Сначала задано число N - количество элементов в массиве. Далее через пробел записаны N... http://www.cyberforum.ru/cpp-beginners/thread1137186.html
C++ Ввод и вывод матрицы в виде ромба
Суть задания. Нужно в квадратную матрицу ввести ромб, размер матрицы задает пользователь (допустим размер матрицы - нечетное число, для начала). Сначало программа заполняет ромб единицами, а вокруг нулями. 00100 01110 11111 01110 00100 А потом на выводе нужно будет заменить нули пробелами, а единицы звёздочками. Не могу придумать алгоритм, по которому будет автоматически заполнятся...
Разбор задачи на построение массивов C++
В метании молота состязается n спортcменов. Каждый из них сделал m бросков. Побеждает спортсмен, у которого максимален наилучший бросок. Если таких несколько, то из них побеждает тот, у которого наилучшая сумма результатов по всем попыткам. Если и таких несколько, победителем считается спортсмен с минимальным номером. Определите номер победителя соревнований. Формат входных данных Программа...
C++ Использование конструктора на С++ http://www.cyberforum.ru/cpp-beginners/thread1137170.html
Дошел до конструктора и деструктора - которые используются, для инициализации членов класса, написал программу и не хочет компилироваться, выдает: fatal error LNK1120: 1 неразрешенных внешних элементов Cсылается на private - не возможность обратится к переменной - члену класса используя косвенный доступ, привожу код: #include<iostream> class Cat
C++ Загрузка библиотеки и использованием ее функций Добрый день уважаемые форумчане. Как всегда не нашел подходящего раздела, поэтому пишу тут. Есть turbo c++ версии 3.0. и есть библиотека(lib) от разработчика контроллеров Vortex, которая скомпилирована на turbo c и есть демки от разработчика. Что собой представляет демка? Это файл .prj,.с и файл .mak. Если запускаю демку, то все нормально компилиться. Если делаю копипаст в срр файл то получаю... подробнее

Показать сообщение отдельно
zitxbit
Master C/C++
87 / 739 / 75
Регистрация: 11.04.2012
Сообщений: 971
02.04.2014, 19:21     Действительная матрица n * m. Сортировать строки в порядке убывания значений первых элементов
Подождите, еще один пример на STL C++

Добавлено через 17 минут
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
#include <stdio.h>
#include <stdlib.h>
 
#include <vector>
#include <iostream>
#include <algorithm>
 
const int n = 5, m = 10;
 
template<class T>
void swapptr(T*& p1, T*& p2)
 { T* _tp = p1; p1 = p2; p2 = _tp; }
 
typedef std::vector<std::vector<int>> matrix;
 
using namespace std;
 
int RandValue() { return rand() % 9 + 1; }
 
int main(int argc, char** argv)
{
    static matrix A(n); 
    matrix::iterator row_iterator;
    for (row_iterator = A.begin(); row_iterator != A.end(); row_iterator++)
    {
        row_iterator->resize(m, 0);
        std::generate(row_iterator->begin(), row_iterator->end(), RandValue);
        for (matrix::size_type index = 0; index < m; index++)
            std::cout << row_iterator->at(index) << " ";
 
        std::cout << endl;
    }
 
    std::cout << endl << endl;
 
    for (row_iterator = A.begin(); row_iterator != A.end(); row_iterator++)
    {
        matrix::iterator max_iterator = row_iterator;
        matrix::iterator sort_iterator = max_iterator;
        while (sort_iterator != A.end())
        {
            if (sort_iterator->at(0) > max_iterator->at(0))
                max_iterator = sort_iterator;
            sort_iterator++;
        }
 
        std::iter_swap(row_iterator, max_iterator);
    }
 
    for (row_iterator = A.begin(); row_iterator != A.end(); row_iterator++)
    {
        for (matrix::size_type index = 0; index < m; index++)
            std::cout << row_iterator->at(index) << " ";
 
        std::cout << endl;
    }
 
    std::cout << endl;
    std::cin.get();
 
    return 0;
}
Проще некуда.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru