![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Помогите отсортировать двумерный массив (С++) |
|
C/C++ - Помогите отсортировать двумерный массив (С++)
|
Новый участник Сообщения: 2 |
Дана целочисленная матрица.
1. Определить номер первого столбца, содержащий хотя бы один нулевой элемент. 2. Характеристикой строки целочисленной матрицы назовем сумму ее отрицательных четных элементов. Отсортировать строки матрицы по убыванию характеристик. Первая часть сделана! Помогите, пожалуйста, отсортировать. #include <iostream.h> #include <iomanip.h> int main() { int nrow, k, ncol; cout<<"Vedite koli4estvo strok i stolbcov: "; cin>>nrow>>ncol; int i, j; int **a=new int *[nrow]; for (i=0; i<nrow; i++) a[i]=new int [ncol]; cout<<"Vvedite elementi massiva: "<<endl; for (i=0; i<nrow; i++) for (j=0; j<ncol; j++) cin>>a[i][j]; for (i=0; i<nrow; i++) { for (j=0; j<ncol;j++) cout<<setw(4)<<a[i][j]<<" "; cout<<endl;} int num=-1; for (j=0; j<ncol; j++) for (i=0; i<nrow; i++) { if (a[i][j]==0) { k=j+1; cout<<"Nomer stolbca: "<<k<<endl; break; } } if (num==-1) cout<<"Stolbcov net"<<endl; return 0; } |
|
Отправлено: 17:24, 14-05-2012 |
Необычный Сообщения: 4466
|
Профиль | Сайт | Отправить PM | Цитировать Luda-tin,
Цитата Luda-tin:
P.S. Оформляйте пожалуйста код тегом <noparse> <code> </code> </noparse>. Для упрощения, выделите код и нажмите кнопку # (строка форматирования сообщения) |
|
------- Отправлено: 21:16, 14-05-2012 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Разный Сообщения: 1294
|
Профиль | Отправить PM | Цитировать Цитата lxa85:
сумма строк |
|
Отправлено: 22:15, 14-05-2012 | #3 |
Необычный Сообщения: 4466
|
Профиль | Сайт | Отправить PM | Цитировать Цитата ferget:
![]() |
|
Отправлено: 01:10, 15-05-2012 | #4 |
Новый участник Сообщения: 2
|
Профиль | Отправить PM | Цитировать Так, нет?
#include <iostream> #include <iomanip> #include <windows.h> using namespace std; int GetCharacters(int* arr, int num) { int sum = 0; for (int i = 0; i < num; i++) { if((arr[i]<=0) && (arr[i]%2 ==0)) sum += arr[i]; } return sum; } int main() { SetConsoleOutputCP(1251); int nrow, k = 0, ncol; cout<<"Vedite koli4estvo strok i stolbcov: "; cin>>nrow>>ncol; int **a = new int *[nrow]; for (int i = 0; i < nrow; i++) a[i] = new int [ncol]; cout<<"Vvedite elementi massiva: "<<endl; for (int i = 0; i < nrow; i++) for (int j = 0; j < ncol; j++) cin>>a[i][j]; for (int i = 0; i < nrow; i++) { for (int j = 0; j < ncol;j++){ if (a[i][j] == 0 && k == 0) { k = j + 1; } cout<<setw(4)<<a[i][j]<<" "; } cout<<endl; } if (k) cout<<"Номер первого столбца содержащего 0: "<<k<<endl; else cout<<"Нет столбцов содержащих 0 :-("<<endl; int *t; for(int j = 0;j< nrow ; j++){ for(int i = 0;i < nrow - j - 1;i++) if(GetCharacters(a[i],ncol) < GetCharacters(a[i + 1],ncol)){ t = a[i]; a[i] = a[i + 1]; a[i + 1] = t; } } cout<<"Отсортированный массив: "<<endl; for (int i = 0; i < nrow; i++) { for (int j = 0; j < ncol;j++) cout<<setw(4)<<a[i][j]<<" "; cout<<endl; } return 0; } |
|
Отправлено: 08:57, 15-05-2012 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
C/C++ - [решено] Помогите исправить (двумерный массив) на С++ | Luda-tin | Программирование и базы данных | 2 | 13-05-2012 22:53 | |
C/C++ - Двумерный массив | feytan | Программирование и базы данных | 0 | 14-04-2011 00:58 | |
C/C++ - Двумерный массив | NAstyaT | Программирование и базы данных | 1 | 08-12-2010 00:38 | |
C/C++ - [решено] Динамическая память под двумерный массив, где ошибка?) | SeRgikON | Программирование и базы данных | 4 | 04-06-2010 18:31 | |
HDD - Помогите собрать RAID массив | advokcat | Накопители (SSD, HDD, USB Flash) | 15 | 12-03-2009 10:45 |
|