Форум программистов, компьютерный форум CyberForum.ru

удалить строку из двумерного массива - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ пмг разобраться в коде http://www.cyberforum.ru/cpp-beginners/thread216997.html
#include "stdio.h" int main() { const int N=9; int mas={1,2,3,4,5,6,7,8,9}, l=0, r=N-1, i_temp, i, temp; while(l<r) { i_temp=l; for(i=l+1; i<=r; i++) if(mas>mas)
C++ Перегрузка операции Перегрузить операцию (обращение к элементу массива) и операцию + (сложение). В операции + первый операнд имеет тип Massiv, а второй указатель на массив целых чисел (int *), считать, что длины массивов одинаковы. В результате получаем новый объект типа Massiv, длина которого равна сумме длин исходных массивов, вначале записываются элементы из первого исходного массива затем из второго. http://www.cyberforum.ru/cpp-beginners/thread216982.html
Двоичная система C++
Нужно написать программу на СИ(не на си++), чтоб та Представляла заданное число в двоичной системе . Заранее спасибо
C++ Найти номер первого отрицательного элемента, делящегося на 5 с остатком 2.
Найти номер первого отрицательного элемента, делящегося на 5 с остатком 2. я составила программу она идет только учительница просит с использованием процедуры INIT PRINT НАПИШИТЕ ПОЖАЛУЙСТА
C++ Ассемблер.Вложенные циклы, обработка массивов. http://www.cyberforum.ru/cpp-beginners/thread216970.html
составление программы с использованием сравнений, условных и безусловных переходов, организацией вложенных циклов. Дано целое отрицательное число. Найти разность между максимальной и минимальной цифрой. а) 8051
C++ Ищу человека который напишет программу для курсового проекта. Ищу человека который сможет в кратчайшие сроки написать программку(простенькую игрушку) для курсового проекта, с подробным описанием программного кода, либо полностью курсовую работу, так же в кратчайшие сроки. За оплату. За подробностями пишите на мыло: c.e.n.s.o.r.e.d@mail.ru или ISQ: 4 ноль 6 719 286. подробнее

Показать сообщение отдельно
Aye Aye
367 / 281 / 36
Регистрация: 17.12.2009
Сообщений: 567
21.12.2010, 21:31
проходим по строке, если встречаем отрицательный элемент - переписываем все оставшиеся строки на одну вверх, замещая текущую строку:
Код
1  1  2  3        1  1  2  3
4 -1  4  1   =>   1  8  1  1
1  8  1  1        5  2  3  5
5  2  3  5
я бы сделал, чтобы функция возвращала новое количество строк получившейся матрицы.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
int deleterow(int **A, int m, int n)  // для матрицы m на n.
{
    for (int i = 0; i < m; ++i) {
        for (int j = 0; j < n; ++j) {
            if (A[i][j] < 0) {
                for (int k = i; k < m - 1; ++k) {
                    for (int z = 0; z < n; ++z) {
                         A[k][z] = A[k+1][z];
                    }
                }
                --m;
                --i;
            }
        }
    }
    return m;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru