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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
gingrs
0 / 0 / 0
Регистрация: 03.12.2012
Сообщений: 1
#1

Задачка с двумерным массивом - C++

04.12.2012, 02:23. Просмотров 239. Ответов 0
Метки нет (Все метки)

Задание:
Дана действительная матрица размера n на (n+1), действительные числа a[1]...a[n+1], b[1]...b[n+1], натуральные числа p, q (p<=n, q<=(n+1). Образовать новую матрицу размера (n+1) на (n+2) вставкой после строки с номером p данной матрицы новой строки с элементами a[1]...a[n+1] и последующей вставкой после столбца с номером q нового столбца с элементами b[1]...b[n+1].

Строку и столбец вставила, но вот как быть с элементами, которые идут после столбца?..Подскажите, посоветуйте, пожалуйста, буду очень благодарна.

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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
#include <iostream.h>
#include <conio.h>
 
void main()
{
clrscr();
double m[50][50],m2[50][50],a[50],b[50];
int n=0, i=0, j=0;
cout<<"Enter n: ";
cin>>n;
cout<<"Enter elements of the array:\n";
for (i=1; i<n+1; i++)
    {
    for (j=1; j<n+2; j++)
        {
        cout<<"m["<<i<<"]["<<j<<"]=";
        cin>>m[i][j];
        m2[i][j]=m[i][j];
        }
    }
 
 
cout<<"Array m: \n";
for (i=1; i<n+1; i++)
    {
    cout<<" ";
    for (j=1; j<n+2; j++)
        {
        cout<<m[i][j]<<" \t";
        }
    cout<<endl;
    }
int p=0, q=0;
do
{
    do
    {
        cout<<"Enter p: ";
        cin>>p;
        if (p>n) cout<<"p must be less than n !\n";
        if (p==0) cout<<"p can't equal zero !\n";
    } while (p==0);
} while (p>n);
do
{
    do
    {
        cout<<"Enter q: ";
        cin>>q;
        if (q>n+1) cout<<"q must be less than n+1 !\n";
        if (q==0) cout<<"q can't equal zero !\n";
    } while (q==0);
} while (q>n+1);
 
//-----------------------------new array-------------------
 
cout<<"Enter the array of elements which will be inserted after the line #p:\n";
for (i=1; i<n+2; i++)
{
    cout<<"a["<<i<<"]=";
    cin>>a[i];
}
for (i=p+1; i<n-p; i++)
{
    for (j=1; j<n+2; j++)
    {
    m[i][j]=a[i];
    }
}
 
 
 
cout<<"Enter the array of elements which will be inserted after the column #q:\n";
for (i=1; i<n+1; i++)
{
    cout<<"b["<<i<<"]=";
    cin>>b[i];
}
 
for (i=1; i<n+2; i++)
{
    for (j=1; j<n+3; j++)
    {
        for (i=1; i<p+1; i++)
        {
            m2[i][j]=m[i][j];
            for (i=p+1; i<p+2; i++)
            {
                m2[i][j]=a[i];
            }
            for (i=p+2; i<n+2; i++)
            {
                                m2[i][j]=m[i-1][j];
            }
        }
    }
}
for (i=1; i<n+2; i++)
{
    for (j=1; j<n+3; j++)
    {
        for (j=1; j<q+1; j++)
        {
            for (j=q+1; j<q+2; j++)
            {
                m2[i][j]=b[i];
            }
            for(j=q+2; j<n+3; j++)
            {
                m2[i][j]=m[i][j-1];
            }
        }
    }
}
 
//----------------------------------------------
for (i=1; i<n+2; i++)
{ cout<<endl;
    for(j=1; j<n+3; j++)
    {
        cout<<m2[i][j]<<"\t";
    }
}
 
 
 
 
 
getch();
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.12.2012, 02:23
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Задачка с двумерным массивом (C++):

Функция работы с двумерным массивом - C++
Не могу вызвать функцию в основной программе. В задании перед массивом двумерным вообще требуется поставить 1 указатель,но так тоже не...

Координатная плоскость двумерным массивом - C++
Здравствуйте! скажите пожалуста можно ли сдлелать некий аналог координатной плоскости используя двумерный массив. То есть, чтобы имея...

Работа с динамическим двумерным массивом - C++
Написал код. В двумерном массиве 5х5 находится максимальное значение каждой строки и затем минимальное из них. Необходимо указывать...

ассоциативный массив map c двумерным массивом - C++
Искал информацию в интернете но безрезультатно. Необходимо сделать ассоциативный массив с со строковым ключом и двумерным массивом 3х3 в...

Создание типа данных схожего с двумерным массивом - C++
Изучаю сейчас ООП в С++, и в качестве жертвы выбрал создание нового типа данных аля матрица. Проблема в том, как сделать, чтобы с ним можно...

Работа с двумерным массивом - разобрать строку кода - C++
Изучаю С++ по книге Шилдт Г.(базовый курс 3-е издание). В теме двумерных массивов столкнулся со строкой, над которой сколько бы не ломал...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.12.2012, 02:23
Привет! Вот еще темы с ответами:

Легкая переделка для использования с двумерным массивом - C++
Изначально писал прогу для использования с одномерным массивом, но возникла потребность в использовании функции для каждой строки...

Ошибка с памятью при работе с динамическим двумерным массивом - C++
Вроде всё правильно, но в ходе работы программа выдаёт ошибку(на скрине). Дело в двумерном динамическом массиве. Ниже код с функцией, куда...

Ввести продажи книг за 3 года, пользуясь двумерным массивом - C++
Я только что здесь отписывался с этим заданием, но у меня возник еще один вопрос. Моя задача сделать прогу, которая предлагает пользователю...

Создать класс для работы с двумерным динамическим массивом чисел - C++
Создать класс для работы с двумерным динамическим массивом чисел. Методы: -заполнить массив рандомно. -вывести массив. И...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru