Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 09.11.2022
Сообщений: 36
1

Как задать матрицу 20 на 20 или 200 на 200 . Как задать матрицу большого размера? Как задать гигантскую матрицу?

11.01.2023, 21:01. Показов 677. Ответов 12

Author24 — интернет-сервис помощи студентам
Не могу задать матрицу 20х20 максимум что выдаёт 16х16. При попытки ввода 20х20 выдаёт одну строку из 16 чисел. Чем обусловлен этот предел и как его увеличить? В другой же программе максимальную выводит 170х170 а 180×180 уже не хочет выводить ни строчки при том что функции задаётся Матрица с запасом arr[][3000].

Чем обусловлен этот предел и как его увеличить?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.01.2023, 21:01
Ответы с готовыми решениями:

Как задать матрицу
Нужно найти матрицу линейного оператора А, при повороте вокруг оси OZ на 180 градусов, скажите,...

Как задать матрицу?
Здравствуйте! Помогите разобраться с кодом, как и куда нужно задавать матрицы, расстояния,...

Как задать матрицу 30x30
Как задать матрицу 30x30 на С#? 1 1 1 1 .............1 0.9 1 1 1 ..........1 0.9 0.99 1...

Как задать матрицу A размерности n*n
Помогите, спасибо

Как задать матрицу не рандомно, а статический?
как задать матрицу не рандомно а статический в c# Например 12 34 12 12 21 22 22 22 22 33 33 33...

12
1710 / 1110 / 337
Регистрация: 25.01.2019
Сообщений: 2,910
11.01.2023, 21:18 2
Цитата Сообщение от Plastic _frog_ Посмотреть сообщение
Чем обусловлен этот предел и как его увеличить?
В плюсах нет матриц, у тебя нет кода, а тут нет телепатов.
0
0 / 0 / 0
Регистрация: 09.11.2022
Сообщений: 36
11.01.2023, 21:43  [ТС] 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <ctime>
using namespace std;
int main() {
    int n, i, j, arr[i][j];
 
    cout<<"Vvedite rozmir matricy"<<endl;
    cin>>n;
        for(int i=0; i<n; i++)
         {
        for(int j=0; j<n; j++) 
        {
            arr[i][j]=1+rand()%255;
                cout<<arr[i][j]<<" ";
        }
        cout<<endl;
        }
        delete []arr;
        return 0;
}
Второй код, где можно задать 170 на 170 же слишком большой и находится в двух файлах
0
1710 / 1110 / 337
Регистрация: 25.01.2019
Сообщений: 2,910
11.01.2023, 22:01 4
Цитата Сообщение от Plastic _frog_ Посмотреть сообщение
C++
1
int n, i, j, arr[i][j];

0) i, j неинициализированы
1) нету VLA в плюсах
Цитата Сообщение от Plastic _frog_ Посмотреть сообщение
delete []arr;
0
И тут вот те нате
322 / 209 / 117
Регистрация: 12.07.2016
Сообщений: 555
11.01.2023, 22:04 5
Лучший ответ Сообщение было отмечено Plastic _frog_ как решение

Решение

int n, i, j, arr[i][j];
Так делать нельзя. Если хотите статический массив, то пишите int arr[10000][5000];. Если нужен динамический массив (размер вводит пользователь или он как-то вычисляется), то так:
C++
1
2
3
4
5
6
7
8
9
10
11
int** arr = new int*[N]; // N - количество строк, может быть переменной из программы
for( int i=0; i<N; ++i )
    arr[i] = new int[M]; // M - количество столбцов
 
// тут пользуемся матрицей, например
// arr[N-1][M-1] = 100;
 
// очищаем память, которую выделяли new
for( int i=0; i<N; ++i )
    delete[] arr[i];
delete[] arr;
1
1710 / 1110 / 337
Регистрация: 25.01.2019
Сообщений: 2,910
11.01.2023, 22:07 6
Цитата Сообщение от Evgen173 Посмотреть сообщение
int arr[10000][5000];
200 метров? стек порвёца
0
0 / 0 / 0
Регистрация: 09.11.2022
Сообщений: 36
11.01.2023, 22:10  [ТС] 7
Таковы условия задания, там ещё эту матрицу нужно записать в файл будет
0
И тут вот те нате
322 / 209 / 117
Регистрация: 12.07.2016
Сообщений: 555
11.01.2023, 22:13 8
Folian, согласен, по нолику бы убрать Статический массив на 500к элементов у меня норм создает.
Plastic _frog_, используйте динамические массивы и выделение памяти с помощью new
1
1710 / 1110 / 337
Регистрация: 25.01.2019
Сообщений: 2,910
11.01.2023, 22:25 9
Цитата Сообщение от Evgen173 Посмотреть сообщение
Статический массив на 500к элементов у меня норм создает.
В баню такие шляпы на стеке не нужны, ИМХО
0
0 / 0 / 0
Регистрация: 09.11.2022
Сообщений: 36
11.01.2023, 22:28  [ТС] 10
А как потом передать массив, заданный через new в функцию (в качестве аргументов — матрица и ее колличество столбцов и рядов) ?
0
И тут вот те нате
322 / 209 / 117
Регистрация: 12.07.2016
Сообщений: 555
11.01.2023, 22:35 11
Лучший ответ Сообщение было отмечено Plastic _frog_ как решение

Решение

Plastic _frog_,
// определение функции
void func( int **arr, int n, int m) {...}
// вызов
func( arr, n, m );

Матрица имеет размер N на M, что значит N строк и M столбцов
1
4866 / 2664 / 914
Регистрация: 29.11.2010
Сообщений: 5,747
11.01.2023, 23:52 12
Цитата Сообщение от Plastic _frog_ Посмотреть сообщение
Таковы условия задания
Показывайте условия задания. Сомневаюсь, что там сказано "задать матрицу гигантского размера".
0
3719 / 2648 / 761
Регистрация: 29.06.2020
Сообщений: 9,800
11.01.2023, 23:57 13
Цитата Сообщение от Plastic _frog_ Посмотреть сообщение
Как задать гигантскую матрицу?
Я, я, я могу : int arr[9223372036854775807][9223372036854775807];
Ну задал же
0
11.01.2023, 23:57
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.01.2023, 23:57
Помогаю со студенческими работами здесь

Как задать матрицу размерности n на n с чередующимися 0 и 1?
Как задать матрицу размерности n на n с чередующимися 0 и 1??

Как рекуррентно задать матрицу Уолша?
Как записать формулу рекурсии для матрицы Уолша на Delphi?

Как задать Ганкелеву матрицу и транспонировать ее?
Ганкелева матрица является симметричной. В ганкелевой матрице равные элементы расположены на...

Как задать нулевую матрицу в условий Matlab
Привет Всем!!! как задать нулевую матрицу в условий Matlab? M=; S=; function C=primer1(M,S) ...

Как задать двумерную матрицу в search()? <algorithm>
Надо найти в большой булевской матрице другие булевские подматрицы. задаю подматрицы int one = ...

Как задать матрицу через текстовый файл?
Как изменить код, чтобы матрица задавалась не случайным образом, а через текстовый файл? #include...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Аутентификация на сайте с помощью формы
bytestream 21.01.2025
В современном цифровом мире безопасная аутентификация становится краеугольным камнем защиты веб-приложений и пользовательских данных. Каждый день миллионы людей используют различные онлайн-сервисы,. . .
Как получить индекс в цикле for в Python
bytestream 21.01.2025
При работе с коллекциями данных в Python часто возникает необходимость не только получить доступ к элементам последовательности, но и знать их позицию в процессе итерации. Индексация в циклах. . .
Как определить адрес, из которого локальный репозиторий Git был клонирован
bytestream 21.01.2025
В современной разработке программного обеспечения система контроля версий Git стала неотъемлемой частью рабочего процесса. При работе с Git разработчики часто сталкиваются с необходимостью. . .
Какая разница между операторами == и === в сравнениях в JavaScript
bytestream 21.01.2025
В мире веб-разработки JavaScript занимает особое место как динамический язык программирования, предоставляющий разработчикам широкий набор инструментов для создания интерактивных веб-приложений. . . .
Из чего и как собрать свой домашний кинотеатр
bt_guru 21.01.2025
Создание домашнего кинотеатра: от идеи до реализации В современном мире домашний кинотеатр стал неотъемлемой частью комфортного жилого пространства, предоставляя возможность наслаждаться. . .
Ошибки стиральных машин
bt_guru 21.01.2025
Современные стиральные машины представляют собой сложные электронные устройства, оснащенные множеством датчиков и систем контроля. Они способны самостоятельно определять вес загруженного белья,. . .
Копирование (маппинг) объектов в JavaScript
bytestream 21.01.2025
В современной разработке программного обеспечения копирование объектов представляет собой фундаментальную операцию, которая требует особого внимания и понимания. Маппинг объектов в JavaScript – это. . .
Как работать с Apache Kafka в C# .NET
bytestream 21.01.2025
Apache Kafka представляет собой распределенную платформу потоковой передачи данных, которая произвела революцию в области обработки больших объемов информации в реальном времени. Эта система,. . .
Как использовать RabbitMQ в C# .NET
bytestream 21.01.2025
RabbitMQ представляет собой мощный брокер сообщений, который эффективно решает эту задачу, обеспечивая надежную передачу данных между множеством приложений. Этот инструмент реализует протокол AMQP. . .
Как объединить последние коммиты в Git
bytestream 21.01.2025
В мире разработки программного обеспечения система контроля версий Git стала незаменимым инструментом для управления исходным кодом. Одной из наиболее полезных, но порой сложных для освоения функций. . .
Как запушить новую локальную ветку (branch) в удалённый репозиторий Git и отслеживать её
bytestream 21.01.2025
В современной разработке программного обеспечения система контроля версий Git стала неотъемлемым инструментом для эффективного управления кодом и организации командной работы. Одной из ключевых. . .
Как создать директорию и все родительские директории, указанные в пути, с помощью Python
bytestream 21.01.2025
Python предоставляет мощные инструменты для работы с файловой системой через встроенные модули os и pathlib, которые значительно упрощают процесс манипуляции директориями. Эти модули содержат. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru