Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Общие вопросы по программированию, компьютерный форум
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.12.2017, 20:58   #1
HiFull
Пользователь
 
Регистрация: 22.08.2017
Сообщений: 11
По умолчанию Массив двумерных массивов.

Доброго времени суток, программисты!
Решаю олимпиадную задачу и возник вопрос:
Как сделать массив двумерных массивов, в данном случае, на Паскале или Питоне?

Условия задачи говорить не буду, некорректно, а вот пример дам:
Вводится K матриц , каждая NxM. Как создать структуру или массив, которая будет сохранять эти матрицы в виде, к примеру,
array[1] = {первая матрица}, array[2] = {вторая матрица}, ... , array[n] = {n- ная матрица}?
Изначально не знаю, как это устроено, поэтому могу ошибаться, вот и прошу вас помочь, объяснить или скинуть ресурс, где можно это прочитать. Заранее спасибо!
HiFull вне форума Ответить с цитированием
Старый 03.12.2017, 21:36   #2
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,538
По умолчанию

Например так:
Код:
type
 tArr2=array[0..5] of array[0..6] of Double;
 tSuperArr=array[0..3] of tArr2;
или так
Код:
type
 tSuperArr=array[0..3] of array[0..5] of array[0..6] of Double;
или так, если заранее неизвестно , сколько этих массивов будет
Код:
type
 tSuperArr=array of array[0..5] of array[0..6] of Double;
type_Oleg на форуме Ответить с цитированием
Старый 03.12.2017, 21:52   #3
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Код:
var ar:array[1..k,1..n,1..m] of byte;
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 03.12.2017, 22:14   #4
New man
Форумчанин
 
Регистрация: 24.01.2011
Сообщений: 774
По умолчанию

На python просто делаешь list ([]), потом к нему добавляешь матрицы.
Код:
matr_list = []
matr1 = [[1,2],[3,4]]
matr2 = [[8,9,7],[48,8,9]]
matr_list.append(matr1)
matr_list.append(matr2)
#Или
matr_list = [matr1, matr2]
a.k.a. Angelicos Phosphoros
Мой сайт
New man вне форума Ответить с цитированием
Старый 04.12.2017, 10:07   #5
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

На питоне вообще без проблем. Собираете матрицы в новый список, конструктором или по одной добавляя в конец
Например:
Код:
allArrays = []
for i in range(k):
  temp = [map(int, input().split()) for j in range(n)]
  allArrays.append(temp)

Последний раз редактировалось Black Fregat; 04.12.2017 в 10:08. Причина: Не обновил страницу вовремя :(
Black Fregat вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка двумерных массивов. olesia @@@ Паскаль, Turbo Pascal, PascalABC.NET 6 27.02.2014 08:25
Дан массив целых чисел. Составить программу обработки двумерных массивов...Паскаль gudok2 Помощь студентам 3 29.03.2013 10:43
Дан массив целых чисел. Составить программу обработки двумерных массивов. Зарание Спасибо. Mainln Помощь студентам 2 27.03.2013 23:25
обработка двумерных массивов Jalgas-xan Паскаль, Turbo Pascal, PascalABC.NET 1 18.01.2013 13:50
обработка двумерных массивов desu_desu Помощь студентам 0 17.12.2011 15:21