Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/65: Рейтинг темы: голосов - 65, средняя оценка - 4.78
4 / 4 / 0
Регистрация: 15.02.2009
Сообщений: 30

Характеристикой столбца целочисленной матрицы...

09.03.2009, 11:05. Показов 12984. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Характеристикой столбца целочисленной матрицы назовем сумму модулей его отрицательных нечетных элементов. Переставляя столбцы заданной матрицы, расположить их в соответствии с ростом характеристик.
Найти сумму элементов в тех столбцах, которые содержат хотя бы один отрицательный элемент.
Заранее благодарен.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.03.2009, 11:05
Ответы с готовыми решениями:

Двумерные массивы 1. Характеристикой столбца целочисленной матрицы ...
подскажите пожалуста, есть задание: "Характеристикой столбца целочисленной матрицы назовем сумму модулей его отрицательных нечетных...

Характеристикой столбца целочисленной матрицы назовем сумму модулей его отрицательных нечетных элементов. Переставляя столбцы заданной матрицы, распол
Характеристикой столбца целочисленной матрицы назовем сумму модулей его отрицательных нечетных элементов. Переставляя столбцы заданной...

Характеристикой строки целочисленной матрицы назовем сумму ее положительных четных элементов
Нужно для кода сделать " Характеристикой строки целочисленной матрицы назовем сумму ее положительных четных элементов. ...

1
1 / 1 / 1
Регистрация: 01.05.2013
Сообщений: 87
22.05.2013, 19:36
Лучший ответ Сообщение было отмечено ataman90 как решение

Решение

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
// Column_integer.cpp: определяет точку входа для консольного приложения.
 
#include "stdafx.h"
#include <iostream>
#include <ctime>
#include <iomanip>
using namespace std;
 
int main(int argc, char* argv[])
{
    srand(time(NULL));
    setlocale(LC_ALL, "rus");
    int number_rows,// строки
        number_columns; // столбцы
    cout << "Введите количество строк матрицы: ";
    cin >> number_rows;
    cout << "Введите количество столбцов матрицы: ";
    cin >> number_columns;
 
    // динамическое создание двумерного массива для хранения сгенерированных чисел
    int **ptrarray = new int* [number_rows];
    for (int count = 0; count < number_rows; count++)
        ptrarray[count] = new int [number_columns];
 
    cout << "\nИсходный массив:\n";
    for (int counter_rows = 0; counter_rows < number_rows; counter_rows++)
    {
        for (int counter_columns = 0; counter_columns < number_columns; counter_columns++)
        {
            ptrarray[counter_rows][counter_columns] = rand() % 100 - rand() % 100; // заполнение массива случайными числами
            cout << setw(3) << ptrarray[counter_rows][counter_columns] << "  "; // вывод на экран двумерного массива
        }
        cout << endl;
    }
    cout << endl;
 
    int *ptrsum = new int [number_columns]; // массив характеристик столбцов
    for (int counter_columns = 0; counter_columns < number_columns; counter_columns++)
    {
        ptrsum[counter_columns] = 0; // обнуляем элементы массива характеристик столбцов
        for (int counter_rows = 0; counter_rows < number_rows; counter_rows++)
            if ( (ptrarray[counter_rows][counter_columns] < 0)/*отрицательное число*/ && ((ptrarray[counter_rows][counter_columns] % 2 != 0))/*нечётное*/ )
                ptrsum[counter_columns] += abs(ptrarray[counter_rows][counter_columns]); // сумма элементов столбца матрицы
    }
 
    cout << "\nМассив характеристик:\n";
    for ( int counter = 0; counter < number_columns; counter++)
        cout << setw(3) << ptrsum[counter] << "  "; // печать характеристик массива
    cout << endl << endl;
 
    int *ptrindex = new int [number_columns]; // массив индексов, для формирования порядка перестановок столбцов
    int min = 1000, // переменная для упорядочивания характеристик массива по возрастанию
        index_column; // переменная для хранения индекса минимальной характеристики
 
    // формируем порядок перестановки столбцов
    for (int counter_value = 0; counter_value < number_columns; counter_value++)
    {
        for (int counter = 0; counter < number_columns; counter++)
        {
            if (min > ptrsum[counter] && ptrsum[counter] != -1)
            {
                min = ptrsum[counter]; // поиск минимального
                index_column = counter; // запоминаем номер столбца
            }
        }
     ptrindex[counter_value] = index_column; // сохраняем индекс столбца в массив индексов
     ptrsum[index_column] = -1; // исключаем из поиска данный элемент массива
     min = 1000; // увеличиваем минимум
    }
 
    delete [] ptrsum; // удаляем массив характеристик столбцов
 
    // динамическое создание двумерного массива для перестановок столбцов согласно возрастанию характеристик
    int **ptrarray_relocation = new int* [number_rows];
    for (int count = 0; count < number_rows; count++)
        ptrarray_relocation[count] = new int [number_columns];
 
    // выполняем перестановку столбцов
    for (int counter_columns = 0; counter_columns < number_columns; counter_columns++)
        for (int counter_rows = 0; counter_rows < number_rows; counter_rows++)
                ptrarray_relocation[counter_rows][counter_columns] = ptrarray[counter_rows][ptrindex[counter_columns]]; // перестановка столбцов
 
    // вывод массива, с перестановленными столбцами, на экран
    cout << "\nМассив после перестановок столбцов:\n";
    for (int  counter_rows= 0; counter_rows < number_rows; counter_rows++)
    {
        for (int counter_columns = 0; counter_columns < number_columns; counter_columns++)
        {
            cout << setw(3) << ptrarray_relocation[counter_rows][counter_columns]  << "  ";
        }
        cout << endl;
    }
    cout << endl;
 
    // удаление двумерного динамического массива ptrarray
    for (int count = 0; count < number_rows; count++)
        delete []ptrarray[count];
 
    delete [] ptrindex; // удаление массива индексов характеристик
 
    // удаление двумерного динамического массива ptrarray_relocation
    for (int count = 0; count < number_rows; count++)
        delete []ptrarray_relocation[count];
 
    system("pause");
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.05.2013, 19:36
Помогаю со студенческими работами здесь

Динамический массив. Характеристикой строки целочисленной матрицы назовем сумму ее положительных четных элементов. Переставляя строки заданной матрицы
#include &lt;iostream.h&gt; #include &lt;math.h&gt; #include &lt;string.h&gt; int kol_vo(int **a, int n, int m); int main() { int...

Определить номер столбца с наибольшей характеристикой
набросал код, о н выдаёт неверный результат. помогите найти в чём ошибка. Характеристикой столбца матрицы назовем произведение...

Определить номер строки матрицы с наименьшей характеристикой
{ int n, m; cout&lt;&lt;&quot;n = &quot;; cin&gt;&gt;n; cout&lt;&lt;&quot;m = &quot;; cin&gt;&gt;m; int** matr = new int*; time_t t; srand((unsigned) time(&amp;t)); for...

В целочисленной матрице найти номер столбца с минимальной суммой элементов
С++.дана целочисленная матрица (m,n) Найти номер столбца с минимальной суммой элементов

Ввод с клавы размера целочисленной матрицы, а затем самой матрицы. Найти наибольший элемент. Разрешается использовать только один оператор цикла
С клавиатуры вводится размерность целочисленной матрицы, затем сама матрица. Найти наибольший элемент. Разрешается при этом использовать...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru