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

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

08.11.2009, 11:16. Показов 2125. Ответов 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
Ответ Создать тему
Новые блоги и статьи
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru