Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Delphi > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 18.06.2014, 11:49   #1
rainbow
Форумчанин
 
Регистрация: 06.09.2008
Сообщений: 156
По умолчанию Создать определенное количество массивов

Задача следующая:
"Создать массивы длинной 3, заполнить их случайными значениями от 0 до 9.
Количество создаваемых массивов задать вручную. Результат вывести на экран."
Проблема в том, что я не понимаю как создать определенное количество массивов, один массив создается объявлением переменной типа array, а их количество задается переменной.
Ужас, как я устал от тупизны...
rainbow вне форума Ответить с цитированием
Старый 18.06.2014, 12:19   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,840
По умолчанию

Изучай getmem() и создание динамических массивов.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 18.06.2014, 13:03   #3
rainbow
Форумчанин
 
Регистрация: 06.09.2008
Сообщений: 156
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Изучай getmem() и создание динамических массивов.
Я что то не понял, размер динамического массива может меняться во время исполнения программы, а у меня массив одномерный, длина его фиксирована (константа) и равна 3 (допустим array[1..3] of integer), проблема в том, что надо создать заданное количество массивов, а не заданной длины. На с++ проблем бы не было с этим, там можно даже объявлять переменные в теле цикла, сколько надо, столько сделал, а тут нет.
Ужас, как я устал от тупизны...
rainbow вне форума Ответить с цитированием
Старый 18.06.2014, 15:05   #4
BDA
Модератор
Заслуженный модератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 5,568
По умолчанию

Код:
type
 myarr = array [1..3] of integer;
var
  a : array [1..10] of myarr;
Осталось только вместо "a" сделать динамически выделяемый массив.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 18.06.2014, 15:21   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,840
По умолчанию

Цитата:
проблема в том, что надо создать заданное количество массивов, а не заданной длины.
Вот именно. Заданное количество массивов это и есть динамический двумерный массив.
Цитата:
На с++ проблем бы не было с этим, там можно даже объявлять переменные в теле цикла, сколько надо, столько сделал
Показывай как на Си.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 19.06.2014, 06:22   #6
rainbow
Форумчанин
 
Регистрация: 06.09.2008
Сообщений: 156
По умолчанию

Проблема решена как то так:
Код:
type
 mass = array of integer;
var
  a : array of mass;
Потом выделяем памяти сколько нужно через SetLength и заполняем его.
Цитата:
Сообщение от Stilet Посмотреть сообщение
Показывай как на Си.
Там можно прямо в теле кода вставлять int a[N]={команда заполнения}
Создать массив a с количеством элементов N тип integer и заполнить его значениями, так можно сколько угодно их там сделать по счетчику.
Ужас, как я устал от тупизны...
rainbow вне форума Ответить с цитированием
Старый 19.06.2014, 07:26   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,840
По умолчанию

Цитата:
Там можно прямо в теле кода вставлять int a[N]={команда заполнения}
Увы не везде так можно )
Если не ошибаюсь это относится только к некоторым компиляторам Си. Gcc и VC к примеру такого не пропустят.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Посчитать количество строк содержащих определенное слово cloud.00 PHP 1 31.03.2012 12:25
Добавление к строке определенное количество пробелов Jetro Общие вопросы Delphi 4 10.12.2011 16:22
Остановка программы на определенное количество времени. AIR_3 Помощь студентам 2 02.06.2011 02:52
Как считать определенное количество букв из слова Poltev86 Общие вопросы Delphi 2 22.05.2010 17:47
ссылка через определенное количество строк chaostt Microsoft Office Excel 7 03.04.2009 18:14


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS