Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
1 / 1 / 0
Регистрация: 18.09.2017
Сообщений: 18
1

Найти в матрице первый столбец, все элементы которого положительны

14.10.2017, 14:38. Просмотров 1040. Ответов 1
Метки нет (Все метки)

Здравствуйте . Помогите пожалуйста написать код. Уже 3 день бьюсь. не получается.

Найти в матрице первый столбец, все элементы которого положительны. Знаки элементов предыдущего столбца изменить на противоположные.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.10.2017, 14:38
Ответы с готовыми решениями:

Найти в матрице первый столбец, все элементы которого положительны
Здравствуйте . Помогите пожалуйста написать код. Уже 3 день бьюсь. не получается. Найти в...

Найти в матрице первый столбец, все элементы которого положительны
Необходимо найти в матрице первый столбец, все элементы которого положительны и знаки элементов...

Найти в матрице первый столбец, все элементы которого положительны.
Задание: Найти в матрице первый столбец, все элементы которого положительны. Знаки элементов...

Найти в матрице первый столбец, все элементы которого отрицательны
Найти в матрице первый столбец, все элементы которого отрицательны, и среднее арифметическое этих...

1
276 / 248 / 209
Регистрация: 14.11.2016
Сообщений: 946
14.10.2017, 16:09 2
Лучший ответ Сообщение было отмечено алиса 623 как решение

Решение

Для строк:
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
const std::size_t npos(-1U);
 
std::size_t FindPositiveLine(int **matrix, std::size_t rows, std::size_t cols)
{
    std::size_t positive_line(npos);
    for (std::size_t i(0); i < rows; ++i)
    {
        bool isPositive(true);
        for (std::size_t j(0); j < cols; ++j)
        {
            if (matrix[i][j] < 0)
            {
                isPositive = false;
                break;
            }
        }
        if (isPositive)
        {
            positive_line = i;
            if (i)
            {
                for (std::size_t j(0); j < cols; ++j)
                {
                    matrix[i - 1][j] = -matrix[i - 1][j];
                }
            }
            break;
        }
    }
    return positive_line;
}
Добавлено через 25 минут
Для столбцов:
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
const std::size_t npos(-1U);
 
std::size_t FindPositiveCol(int **matrix, std::size_t rows, std::size_t cols)
{
    std::size_t positive_col(npos);
    for (std::size_t j(0); j < cols; ++j)
    {
        bool isPositive(true);
        for (std::size_t i(0); i < rows; ++i)
        {
            if (matrix[i][j] < 0)
            {
                isPositive = false;
                break;
            }
        }
        if (isPositive)
        {
            positive_col = j;
            if (j)
            {
                for (std::size_t i(0); i < rows; ++i)
                {
                    matrix[i][j - 1] = -matrix[i][j - 1];
                }
            }
            break;
        }
    }
    return positive_col;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.10.2017, 16:09

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Найти в матрице первый столбец, все элементы которого отрицательны и среднее арифметическое этих столбцов
Вычесть полученное из всех элементов матрицы

Определить, есть ли в данной матрице столбец, в котором все элементы четны и положительны
Дан двумерный массив размером МxN заполненный случайным образом. Определите, есть ли в данном...

Найти в матрице первую строку, все элементы которой положительны
Найти в матрице первую строку, все элементы которой положительны

Найти в матрице первую строку, все элементы которой положительны
помогите плиииз


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.