Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
 Аватар для Bob103
8 / 8 / 9
Регистрация: 23.09.2015
Сообщений: 283

В целочисленной матрице вставить новый столбец перед всеми столбцами, в которых встречается заданное число

27.12.2015, 20:08. Показов 1637. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
У нас нету времени,мне нужен кодЗабыл сказать,в двумерном массиве,элементы целые числа
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
27.12.2015, 20:08
Ответы с готовыми решениями:

Вставить новый столбец перед всеми столбцами, в которых встречается заданное число
Подскажите, как в С# вставить новый столбец перед всеми столбцами, в которых встречается заданное число

Вставить новый столбец перед всеми столбцами, в которых встречается заданное число
Вставить новый столбец перед всеми столбцами, в которых встречается заданное число Только без <list>, потому что не знаю, что это...

Вставить новый столбец перед всеми столбцами матрицы, в которых встречается заданное число
Есть массив, целочисленный. часть из мэйна: int n, m; int a = Input(out n, out m); создаю массив: static int...

5
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
27.12.2015, 20:51
Bob103, используйте целочисленный вектор векторов.
0
 Аватар для Bob103
8 / 8 / 9
Регистрация: 23.09.2015
Сообщений: 283
27.12.2015, 21:12  [ТС]
Вот максимум моих размышлений(может бред):
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
#include <iostream> 
using namespace std;
int ** creat(int &n, int &m)
{cout <<"n="; cin >>n; cout <<"m="; cin » m ;
int **mas=new int *[2*n]; //определяем максимальное количество стр ок
for (int i=0; i<n;++i) mas[i]=new int [m]; 
for (int i=0; i<n; ++i)
for (int j=0; j<m; ++j){cout«"m as["«i«"]["«j«"]="; cin»mas[i][j];} 
return mas;}
void print (int **mas, int n, int m)
{for (int i=0; i<n; i++, cout«endl) 
for (int j=0; j<m; j++) cout<<mas[i][j)«"\t";} 
void deleteMas(int **mas, int n)
{for (int i=0;i<n; i++) delete [] mas[i]; 
delete [] m as;}
int main()
{int n, m, k;
int **a=creat(n,m); //создаем и заполняем матрицу а
int n2=2*n; //п- текущее количество строк, п2 -максимально возможное
print(a,n,m); //выводим первоначальный массив
cout«''k="; cin»k; //вводим номер строки для добавления
if (k<0 || k>n-1 ||n+1>n2) cout«"error”;
else {for (int i=n; i>k; -i) a[i]=a[i-1]; //выполняем сдвиг строк
++n; //увеличиваем текущее количество строк в массиве
a[k]=new int [m); //выделяем память под новую строку массива и заполняем ее
0
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
27.12.2015, 21:24
Цитата Сообщение от Bob103 Посмотреть сообщение
Вот максимум моих размышлений
На данный момент Ваш код ужасен. Почитайте вот этот топик, чтобы было от чего оттолкнуться.

Добавлено через 3 минуты
В принципе, можете вместо вектора векторов попробовать использовать самодельный класс "Матрица". Не рискну предлагать Вам варианты из библиотеки Boost, хотя, возможно, такой выбор был бы весьма неплох.
0
 Аватар для Bob103
8 / 8 / 9
Регистрация: 23.09.2015
Сообщений: 283
27.12.2015, 21:25  [ТС]
Спасибо
0
 Аватар для Bob103
8 / 8 / 9
Регистрация: 23.09.2015
Сообщений: 283
28.12.2015, 08:20  [ТС]
Вот фрагмент моего кода, пожалуйста исправьте, если что не так. А то голова уже не соображает, не знаю как написать условие совпадение числа и элемента массива, начеркал бред
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
#include <iostream> 
using namespace std;
int ** creat(int &n, int &m)
{
    cout << "n="; cin >> n; cout << "m="; cin >> m;
    int **mas = new int *[2 * n]; //определяем максимальное количество стр ок
    for (int i = 0; i<n; ++i) mas[i] = new int[m];
    for (int i = 0; i<n; ++i)
        for (int j = 0; j<m; ++j){ cout<<"m as["<<i<<"]["<<j<<"]="; cin>>mas[i][j]; }
    return mas;
}
void print(int **mas, int n, int m)
{
    for (int i = 0; i<n; i++, cout<<endl)
        for (int j = 0; j<m; j++) cout << mas[i][j]<<"\t";
}
void deleteMas(int **mas, int n)
{
    for (int i = 0; i<n; i++) delete[] mas[i];
    delete[] mas;
}
int main()
{
    int n, m, k,c;
    int **a = creat(n, m); //создаем и заполняем матрицу а
    int n2 = 2 * n; //п- текущее количество строк, п2 -максимально возможное
    print(a, n, m); //выводим первоначальный массив
    cout << "Enter c" << endl; cin >> c;
    if (a[n][m]==c)
    cout<<"k = "; cin>>k; //вводим номер строки для добавления
        if (k<0 || k>n - 1 || n + 1>n2) cout<<"error";
        else {
            for (int i = n; i>k; -i) a[i] = a[i - 1]; //выполняем сдвиг строк
            ++n; //увеличиваем текущее количество строк в массиве
            a[k] = new int[m]; //выделяем память под новую строку массива и заполняем ее
            for (int j = 0; j<m; ++j) { cout <<"a[" << k << ")[" << j << "]="; cin>>a[k][j]; }
            print(a, n, m);
        } //выводим измененный массив
        deleteMas(a, n);
        return 0;
}
Добавлено через 11 минут
Напишите полный кодпожалуйста

Добавлено через 7 часов 10 минут
никто не знает?(
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
28.12.2015, 08:20
Помогаю со студенческими работами здесь

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

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

Вставить перед всеми столбцами в которых нет отрицательных элементов, второй столбец.
Вот задача Вставить перед всеми столбцами в которых нет отрицательных элементов, второй столбец. Я начал делать.. program mas; USES...

В двумерном массиве вставить перед всеми столбцами, в которых нет отрицательных элементов...
В двумерном массиве вставить перед всеми столбцами, в которых нет отрицательных элементов, второй столбец.

Дан двумерный массив. Вставьте второй столбец перед всеми столбцами, в которых нет отрицательных элементов.
Напишите кто-нибудь !


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru