Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
2 / 2 / 1
Регистрация: 13.09.2009
Сообщений: 132

Определить номер первого из столбцов матрицы, содержащих хотя бы один нулевой элемент

08.11.2009, 11:16. Показов 2108. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дана целочисленная прямоугольная матрица. Определить номер первого из столбцов, содержащих хотя бы один нулевой элемент.

Характеристикой строки целочисленной матрицы назовем сумму ее отрицательных четных элементов. Переставляя строки заданной матрицы, расположить их в соответствии с убыванием характеристик.
две задачи в одной
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.11.2009, 11:16
Ответы с готовыми решениями:

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

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

Определить номер первого из столбцов матрицы, содержащих хотя бы один нулевой элемент
1)Дана целочисленная прямоугольная матрица, определить номер первого из столбцов , содержащих хотя бы один нулевой элемент. ...

3
Эксперт С++
 Аватар для valeriikozlov
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
08.11.2009, 15:31
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

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
#include <iostream.h>
#include <windows.h>
 
int main ()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    int **mas, n, m, i, j, j_0=-1, har_str1, har_str2, temp, temp1;
    cout<<"Ââåäèòå êîëè÷åñòâî ñòðîê ìàññèâà: "<< endl;
    cin>>n;
    cout<<"Ââåäèòå êîëè÷åñòâî ñòîëáöîâ ìàññèâà: "<< endl;
    cin>>m;
    mas=new int*[n];
    for(i=0; i<n; i++)
        mas[i]=new int[m];
    cout<<"Ââåäèòå ýëåìåíòû ìàññèâà: "<< endl;
    for(i=0; i<n; i++)
        for(j=0; j<m; j++)
        {   
            cout<<"["<<i<<"]["<<j<<"]=";
            cin>>mas[i][j];
        }
    cout<<"Èñõîäíûé ìàññèâ: "<<endl;
    for(i=0; i<n; i++)
    {
        for(j=0; j<m; j++)
        {
            cout.width(4);
            cout<<mas[i][j]<<"   ";
        }
            cout<<endl;
    }
    // ïîèñê ñòîëáöà ñ íóëåâûì ýëåìåíòîì
    for(i=0; i<m && j_0==-1; i++)
    {
        for(j=0; j<n && j_0==-1; j++)
            if(mas[j][i]==0)
                j_0=i;
    }
    if(j_0!=-1)
        cout<<"ïåðâûé ñòîëáåö â êîòîðîì åñòü íóëåâîé ýëåìåíò èìååò èíäåêñ: "<<j_0<<endl;
    else
        cout<<"ñòîëáöîâ ñ ýëåìåíòàìè ðàâíûìè íóëþ íåò"<<endl;
    // ñîðòèðîâêà ïî õàðàêòåðèñòèêàì
    for(i=0; i<n-1; i++)
        for(j=0; j<n-i-1; j++)
        {
            har_str1=har_str2=0;
            for(temp=0; temp<m; temp+=2)
            {
                if(mas[j][temp]<0)
                    har_str1+=mas[j][temp];
                if(mas[j+1][temp]<0)
                    har_str2+=mas[j+1][temp];
            }
            if(har_str1<har_str2)
                for(temp=0; temp<m; temp++)
                {
                    temp1=mas[j][temp];
                    mas[j][temp]=mas[j+1][temp];
                    mas[j+1][temp]=temp1;
                }
        }
    cout<<"Ïîëó÷åííûé ìàññèâ: "<<endl;
    for(i=0; i<n; i++)
    {
        for(j=0; j<m; j++)
        {
            cout.width(5);
            cout<<mas[i][j]<<" ";
        }
            cout<<endl;
    }
           return 0; 
}
1
0 / 0 / 0
Регистрация: 29.01.2011
Сообщений: 40
03.05.2011, 01:03
Пожалуйста напишите код на Си, совсем не могу понять не зная языка что это, например {
cout.width(5);
cout<<mas[i][j]<<" "; }
Похожих задач у Вас на форуме масса, но абсолютное большинство на Си++, а переучиваться на него не владея стандартным Си как-то глупо
Хоть у меня задание сумма положительных чётных и возрастание характеристик, но с этим я думаю разберусь )
0
Эксперт С++
 Аватар для valeriikozlov
4728 / 2549 / 757
Регистрация: 18.08.2009
Сообщений: 4,568
03.05.2011, 01:39
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Под Вашу сортировку:
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
#include <stdio.h>
#include <iostream.h>
#include <windows.h>
 #include <malloc.h>
int main ()
{
        SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
        int **mas, n, m, i, j, j_0=-1, temp, *mas_tmp;
        printf("Введите количество строк массива:\n");
        scanf("%d", &n);
        printf("Введите количество столбцов массива:\n");
        scanf("%d", &m);
        mas_tmp=(int*) malloc(m*sizeof(int));
        mas=(int**) malloc(n*sizeof(int*));
        for(i=0; i<n; i++)
            mas[i]=(int*) malloc(m*sizeof(int));
        for(i=0; i<m; i++)
            mas_tmp[i]=0;
        printf("Введите элементы массива:\n");
        for(i=0; i<n; i++)
            for(j=0; j<m; j++)
            {   
                printf("[%d][%d]=", i, j);
                scanf("%d", &mas[i][j]);
                if(mas[i][j]>0 && mas[i][j]%2==0)
                    mas_tmp[j]+=mas[i][j];
            }
        printf("Исходный массив:\n");
        for(i=0; i<n; i++)
        {
            for(j=0; j<m; j++)
            {
                printf("%4d ", mas[i][j]);
            }
            printf("\n");
        }
        // поиск столбца с нулевым элементом
        for(i=0; i<m && j_0==-1; i++)
        {
            for(j=0; j<n && j_0==-1; j++)
                if(mas[j][i]==0)
                    j_0=i;
        }
        if(j_0!=-1)
            printf("первый столбец в котором есть нулевой элемент имеет индекс: %d\n", j_0);
        else
            printf("столбцов с элементами равными нулю нет\n");
        // сортировка по характеристикам
        for(i=0; i<m-1; i++)
        {
            int ind=i;
            for(j=i+1; j<m; j++)
                if(mas_tmp[j]<mas_tmp[ind])
                    ind=j;
            for(j=0; j<n; j++)
            {
                temp=mas[j][i]; mas[j][i]=mas[j][ind]; mas[j][ind]=temp;
            }
            temp=mas_tmp[i]; mas_tmp[i]=mas_tmp[ind]; mas_tmp[ind]=temp;
  
        }
        printf("Полученный массив:\n");
        for(i=0; i<n; i++)
        {
            for(j=0; j<m; j++)
            {
                printf("%5d ", mas[i][j]);
 
            }
            printf("\n");
        }
           return 0; 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.05.2011, 01:39
Помогаю со студенческими работами здесь

Определить номер первого из столбцов матрицы, содержащих хотя бы один нулевой элемент
Вот задание: Дана целочисленная прямоугольная матрица. Определить номер первого из столбцов, содержащих хотя бы один нулевой элемент. ...

Определить номер первого из столбцов матрицы, содержащих хотя бы один нулевой элемент
Дана целочисленная прямоугольная матрица. Определить номер первого из столбцов, содержащих хотя бы один нулевой элемент помогите...

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

Определить номер первого из столбцов матрицы, содержащих хотя бы один нулевой элемент
Задача с двумерным массивом на C (не C++). Дана целочисленная прямоугольная матрица. Определить номер первого из столбцов, содержащих...

Определить номер первого из столбцов, содержащих хотя бы один нулевой элемент
Помогите решить задачу 15. Дана целочисленная прямоугольная матрица: а) определить номер первого из столбцов, содержащих хотя...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru