0 / 0 / 0
Регистрация: 23.10.2019
Сообщений: 1
1

Двумерные массивы

23.10.2019, 22:47. Показов 642. Ответов 2

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
int main()
{
    int n, m, s;
    int a[n][m];
    cin >> n >> m;
    s = 0;
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < m; j++) {
            cin >> a[i][j];
            s += a[i][j];
        }
 
 
    }
    cout << s;
}
выводит ошибку c2131 и с 4552, как исправить?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.10.2019, 22:47
Ответы с готовыми решениями:

Получить массив, присвоив k-му элементу значение true, если все элементы k-го столбца матрицы А нулевые
Ребята, помогите очень прошу! :с По массиву А(n,m) получить массив В(n) (типа boolean), присвоив...

Получить новую матрицу, переставляя четверти исходной матрицы размера N×N крест накрест
Помогите решить задачку!!!!!! Дана действительная квадратная матрица порядка 2N. Подучить новую...

Двумерные массивы
Привет всем! если есть у кого время, посмотрите что можно сделать, нужна ваша помощь! Сформировать...

Переставить столбцы матрицы: первый с последним, второй с предпоследним и т. д.
Сформируйте двумерный массив из случайных чисел, принадлежащих отрезку . Преобразуйте массив...

2
7416 / 5011 / 2890
Регистрация: 18.12.2017
Сообщений: 15,694
23.10.2019, 23:38 2
MigelOhara, при вводе размера с клавиатуры применяется не статический, а динамический массив
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
#include <iostream>
using namespace std;
 
int main()
{
    int n, m, sum=0;
    cout << "n="; cin >> n;
    cout << "m="; cin >> m;
    
      int **a = new int*[n]; 
    for (int i = 0; i < n; i++)
    a[i] = new int [m];
    
    cout << "Enter "<< n*m << " elements:\n";
    for (int i = 0; i < n; i++)
    for (int j = 0; j < m; j++)
    {
      cin >> a[i][j];
      sum+=a[i][j];
    }
    
    cout << "sum=" << sum << "\n";
 
    for (int i = 0; i < n; i++)
    delete[]a[i];
    delete[]a;
system("pause");
return 0;
}
1
Мозгоправ
1737 / 1031 / 468
Регистрация: 01.10.2018
Сообщений: 2,138
Записей в блоге: 2
23.10.2019, 23:46 3
Цитата Сообщение от MigelOhara Посмотреть сообщение
int n, m, s;
int a[n][m];
MigelOhara, в С++ при объявлении массива размерности должны быть константными выражениями.

Выхода, как всегда, три:
  1. Cделать m и n константами и присвоить им некие значения, заданные литералами. Тогда нужно отказаться от ввода их значений в программу.
  2. Объявить массив явно бОльшего размера, чем требуется, с помощью констант/литералов. Тогда при вводе m и n нужно будет проверять, что введённые значения не превышают размера массива.
  3. Использовать динамические массивы.
Третий вариант наиболее предпочтительный.

Кстати, в случаях 2 и 3 введённые значения размеров массива хорошо бы проверять, что они больше 0. А то нехорошо может получиться.

Добавлено через 55 секунд
Да, вот Yetty как раз пошёл по третьему пути.

Только введённые значения размеров массива не проверил. Но вы уж сами проверочку допишите?
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.10.2019, 23:46
Помогаю со студенческими работами здесь

Заполнить матрицу указанным образом
Заполнить двумерный массив таким образом: 111 | 122 | ... | 120 ... | ... | ... | ... 30 | ......

Поменять значения во второй строке матрицы на число A
Заполнить двумерный массив действительными случайными числами в диапазоне от -20 до 20. Вывести...

Двумерные массивы
Никогда особо раньше не занимался программирование,больше как то математикой.И вот на первом курсе...

Переставить s-ую строку матрицы на место k-ой
Задано двумерные массив. Переставить s-й ряд на место k-го ( s &gt; k )

Двумерные массивы
Нужно составить программу и блок схему)

Сформировать квадратную матрицу по заданному образцу
сформировать квадратную матрицу порядка n по заданному образцу.


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru