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

Поменять местами столбец с номером 1 и последний из столбцов, содержащих только положительные элементы - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 10, средняя оценка - 5.00
Amir
Заблокирован
19.03.2012, 20:13     Поменять местами столбец с номером 1 и последний из столбцов, содержащих только положительные элементы #1
Matrix53. Дана матрица размера M × N. Поменять местами столбец с номером 1 и последний из столбцов, содержащих только положительные элементы. Если требуемых столбцов нет, то вывести матрицу без изменений.

Добавлено через 11 минут
помогите решить задачу заранее спасибо!!!!!!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.03.2012, 20:13     Поменять местами столбец с номером 1 и последний из столбцов, содержащих только положительные элементы
Посмотрите здесь:

C++ Поменять местами столбец матрицы с номером 1 и последний из столбцов, содержащий только положительніе элементы
C++ В заданной целочисленной матрице поменять местами столбец с номером 1 и последний из столбцов
C++ В заданной целочисленной матрице поменять местами столбец с номером 1 и последний из столбцов
Поменять местами столбец с номером 1 и последний из столбцов, содержащих только положительные элементы C++
Определить номера столбцов содержащих только положительные элементы C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
miriganua
129 / 100 / 4
Регистрация: 05.02.2012
Сообщений: 241
20.03.2012, 00:03     Поменять местами столбец с номером 1 и последний из столбцов, содержащих только положительные элементы #2
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
#include <iostream>
#include <iomanip>
 
using namespace std;
 
int main()
{
    const int row = 8, col = 7;
    int mat[row][col] = {{10, -35, 52, 74, 91, 22, -12},
                         {-58, 39, 21, 24, 42, 76, 65},
                         {-21, 62, -37, 22, 53, 23, 45},
                         {89, 34, 87, -56, 90, 12, 76},
                         {15, 43, 21, 87, 23, 65, -50},
                         {-42, -54, 76, 34, 90, 28, 34},
                         {51, 23, -87, -10, 43, 65, 12},
                         {12, -45, 67, 12, 87, 98, -34}};
 
 
    cout << "Matrix before:" << '\n';
    for (int i = 0; i < row; i++)
    {
        for (int j = 0; j < col; j++)
        {
            cout << setw(4) << mat[i][j];
        }
        cout << '\n';
    }
 
    int lastPositiveColumn = 0;
    for (int j = 1; j < col; j++)
    {
        bool positive = true;
        for (int i = 0; i < row; i++)
        {
            if (mat[i][j] < 0)
            {
                positive = false;
                break;
            }
        }
        if (positive)
        {
            lastPositiveColumn = j;
        }
    }
 
    if (lastPositiveColumn)
    {
        for (int i = 0; i < row; i++)
        {
            int temp = mat[i][lastPositiveColumn];
            mat[i][lastPositiveColumn] = mat[i][0];
            mat[i][0] = temp;
        }
    }
 
    cout << "Matrix after:" << '\n';
    for (int i = 0; i < row; i++)
    {
        for (int j = 0; j < col; j++)
        {
            cout << setw(4) << mat[i][j];
        }
        cout << '\n';
    }
    return 0;
}
Будут вопросы - пиши.
Amir
Заблокирован
20.03.2012, 06:35  [ТС]     Поменять местами столбец с номером 1 и последний из столбцов, содержащих только положительные элементы #3
row = 8 это что означает если столбцы почему 8. setw(4) , lastPositiveColumn это что: lastPositiveColumn это мы задаем какую нибудь функцию да?
miriganua
129 / 100 / 4
Регистрация: 05.02.2012
Сообщений: 241
21.03.2012, 01:30     Поменять местами столбец с номером 1 и последний из столбцов, содержащих только положительные элементы #4
Цитата Сообщение от Игорь Миронюк Посмотреть сообщение
const int row = 8, col = 7;
размеры матрицы(8 строк и 7 столбцов)

setw(4) означает что при выводе следующее число займет 4 знака(то есть в консольном окне цифра 2 будет выглядеть как " 2"б только без кавычек). Использовать не обязательно, но с ним красивее.

lastPositiveColumn хранит номер столбца, содержащего только положительные элементы
Yandex
Объявления
21.03.2012, 01:30     Поменять местами столбец с номером 1 и последний из столбцов, содержащих только положительные элементы
Ответ Создать тему
Опции темы

Текущее время: 02:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru