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

Ввод с клавиатуры прямоугольной матрицы

08.08.2019, 13:07. Показов 5485. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
С квадратной никаких проблем, но как только я добавляю ширину (М). Выдаёт ошибку, что она должна быть константой. Убираю инициализацию соответственно ошибка об её отсутствии.

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
#include <iostream>
#include <cstdlib>
#include <ctime>
 
using namespace std;
 
 
int main()
{
setlocale(LC_ALL, "Russian");
int N, M;
cout << "\nВведите размерность матрицы ";
cin >> N >> M;
cout << endl;
 
 
double **A = new double*[N][M];
 
for (int i = 0; i < N; i++)
 
    A[i] = new double[N][M];
 
for (int i = 0; i < N; i++)
{
    for (int j = 0; j<N; j++)
    {
        cin >> A[i][j];
    }
}
cout << "\n Mатрица:\n\n";
for (int i = 0; i < N; i++)
{
    for (int j = 0; j < N; j++)
        cout << "\t" << A[i][j];
    cout << endl << endl;
}
system("pause");
return 0;
 
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.08.2019, 13:07
Ответы с готовыми решениями:

Класс для работы с прямоугольной матрицей, ввод матрицы с консоли (оператор >>)
ввести класс для работы с прямоугольной матрицей(3х3) Реализовать операцию : ввод матрицы с...

Ввод матрицы с клавиатуры
С одномерными я разобрался. Теперь надо двумерные понять.

Для задания исходной матрицы предусмотреть ввод с клавиатуры или ввод с помощью датчика случайных чисел
Разработать алгоритм и написать программу на языке Turbo Pascal. Задана матрица (двумерный массив)...

Ввод матрицы с клавиатуры
Здравствуйте, помогите доделать ввод массива с клавиатуры, а не так, чтобы он был заранее задан,...

3
7437 / 5029 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
08.08.2019, 13:30 2
Лучший ответ Сообщение было отмечено Yki_Sakura как решение

Решение

Цитата Сообщение от Yki_Sakura Посмотреть сообщение
double **A = new double*[N][M];
double **A = new double*[N];

Цитата Сообщение от Yki_Sakura Посмотреть сообщение
A[i] = new double[N][M];
A[i] = new double[M];

Цитата Сообщение от Yki_Sakura Посмотреть сообщение
for (int j = 0; j<N; j++)
for (int j = 0; j<M; j++)

Добавлено через 4 минуты
перед
Цитата Сообщение от Yki_Sakura Посмотреть сообщение
system("pause");
не забывайте освободить память:
C++
1
2
3
for (int i = 0; i < N; i++)
delete[]A[i];
delete[]A;
2
599 / 436 / 136
Регистрация: 22.11.2017
Сообщений: 1,336
08.08.2019, 14:05 3
Yki_Sakura, привет!
Держи код.
Кликните здесь для просмотра всего текста

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
#include <iostream>
#include <algorithm>
#include <iterator>
 
int main()
{
    setlocale(LC_ALL, "Rus");
    
    size_t N, M;
    std::cout << "Введите размерность матрицы ";
    std::cin >> N >> M;
    std::cout << "\n";
 
    double** A = new double* [N];
    auto ask_value = []()
    {
        double value;
        std::cin >> value;
        return value;
    };
    auto gen_line = [M, ask_value]()
    {
        double* line = new double [M];
        std::generate_n(line, M, ask_value);
        return line;
    };
    std::generate_n(A, N, gen_line);
 
    std::cout << "\n";
    for (auto it_line = A; it_line < A + N; ++it_line)
    {
        for (auto it_value = *it_line; it_value < *it_line + M; ++it_value)
            std::cout << *it_value << " ";
        std::cout << "\n";
    }
 
    for (size_t i = 0u; i < N; ++i)
        delete[] A[i];
    delete[]A;
 
    return 0;
}
Миниатюры
Ввод с клавиатуры прямоугольной матрицы  
0
1 / 1 / 0
Регистрация: 17.04.2019
Сообщений: 28
08.08.2019, 14:38  [ТС] 4
спасибо огромное

Добавлено через 25 минут
спасибо за помощь
0
08.08.2019, 14:38
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.08.2019, 14:38
Помогаю со студенческими работами здесь

Ввод матрицы с клавиатуры
#include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; #define Max 100 #define N 5 int main...

Ввод матрицы с клавиатуры
Доброго времени суток! Столкнулся с такой проблемой. Необходимо ввести матрицу 5х5, реализовал с...

Ввод элементов матрицы с клавиатуры
у меня дано СЛАУ методом гаусса: #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt;...

Ввод элементов матрицы с клавиатуры
Ввод элементов матрицы с клавиатуры. Нужна помощь. Чтобы я мог ввести элементы матрицы А и В с...


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

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

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