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

Двумерный массив: поменять местами две строки - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Обработка исключений http://www.cyberforum.ru/cpp-beginners/thread1177394.html
Необходимо создать три массива a, b и с размерами соответственно n1, n2 и n3 (n1=!n2=!n3). В массив а занести значения функции f(x)=ln(1-x), x принадлежит , dx=0.2 (при возникновении исключения заносить нули). Массив b заполнить случайными числами (среди них должны быть и отрицательные числа и нули). Массив с: ci = ai+1 – 1/bi-1 , где i, i+1, i-1 - это индексы. Предусмотреть и обработать...
C++ Наследование классов Создать класс-родитель «ученик», класс-наследник «ученик и его оценки» (по некоторым предметам), и класс-наследник «журнал». Есть прога написанная структурой #include <stdio.h> #include <tchar.h> #include <conio.h> #include <process.h> #include <dos.h> #include <iostream> #include <string.h> http://www.cyberforum.ru/cpp-beginners/thread1177379.html
C++ Массив как член класса
Почему мне GCC выдаёт ошибку компиляции, что это zero-sized array ? struct Base { const char* d{"f", "f"}; }; ISO C++ forbids zero-size array 'd' const char* d{"f", "f"}; ^ ../expert/main.cpp:230:29: error: too many initializers for 'const char* '
C++ Рекурсия. Удаление лишних пробелов
Доброго времени суток! Подскажите как реализовать с помощью рекурсии задачу: описать функцию, которая удаляет из строки все лишние пробелы.
C++ Передача символьного массива в качестве аргумента http://www.cyberforum.ru/cpp-beginners/thread1177355.html
#include <iostream> using namespace std; void mazeTraverse( char maze ); int main() { char a= { "############", "#...#......#", "..#.#.####.#",
C++ Найти ошибку и оформить вывод массива, как функцию Доброго времени суток! Помогите найти ошибку. И оформить вывод массива как функцию. Заранее благодарю. #include "stdafx.h" #include <math.h> #include <iostream> using namespace std; int norm(int* matrix,int n) { int sum = 0; подробнее

Показать сообщение отдельно
Андрей2002
4 / 4 / 2
Регистрация: 20.04.2014
Сообщений: 64
16.05.2014, 01:37     Двумерный массив: поменять местами две строки
Вот написал по быстрому, заполнение случайными положительными числами от 1 до 100 ну и соответственно решение твоей задачи
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
#include <iostream>
#include <stdio.h> 
#include <stdlib.h>     
#include <time.h>   
 
using namespace std;
int main(){
    setlocale(0, "");
    int size1, size2, mass[100][100], tmp, max = 0, min = 0, max_pos, min_pos;
    cout << "Введите размерность матрицы: "; cin >> size1; cin >> size2;
    srand(time(NULL));
    /* Заполняем матрицу положительными числами */
    for (int i = 0; i < size1; i++){
        for (int j = 0; j < size2; j++){
            mass[i][j] = rand() % 100 + 1;
        }
    }
    for (int i = 0; i < size1; i++){
        for (int j = 0; j < size2; j++){
            max -= mass[i][j];
            min += mass[i][j];
            cout << " " << mass[i][j];
            if (j + 1 == size2){
                cout << endl;
            }
        }
    }
 
    for (int i = 0; i < size1; i++){
        for (int j = 0; j < size2; j++){
            if (max < mass[i][j]){
                max_pos = i;
                max = mass[i][j];
            }
            if (min > mass[i][j]){
                min_pos = i;
                min = mass[i][j];
            }
        }
    }
    cout << "Минимум: " << min << " в строке " << min_pos+1 << endl
        << "Максимум: " << max << " в строке " << max_pos+1 << endl;
    if (min_pos != max_pos){
        cout << "Меняем местами строки " << min_pos+1 << " и " << max_pos+1 << endl;
        for (int j = 0; j < size2; j++){
            tmp = mass[min_pos][j];
            mass[min_pos][j] = mass[max_pos][j];
            mass[max_pos][j] = tmp;
        }
        for (int i = 0; i < size1; i++){
            for (int j = 0; j < size2; j++){
                cout << " " << mass[i][j];
                if (j + 1 == size2){
                    cout << endl;
                }
            }
        }
 
    }
    else{
        cout << "Числа находятся в 1й строке, строки нет смысла менять местами" << endl;
    }
    system("pause >> void");
    return 0;
}
 
Текущее время: 14:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru