![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() |
Rocket |
![]()
Сообщение
#1
|
![]() Знаток ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 306 Пол: Мужской Реальное имя: Евгений Репутация: ![]() ![]() ![]() |
Задание:
1. Создать функции для: • выделения памяти под двумерный целочисленный массив (размер массива запросить через ввод с клавиатуры); • изменения размера массива; • изменения количества элементов заданной строки; • заполнения массива элементами; • просмотра элементов массива на экране (приближенно в виде матрицы); • уничтожения выделенной для массива памяти. В функциях просмотра элементов и уничтожения массива организовать необходимые проверки на правильность указателей (не Nil). Отладить написанные функции. 2. Организовать тестирование при помощи меню, для чего создать два массива: • массив строк, содержащий названия пунктов меню; • массив указателей на функции, для выполнения соответствующих видов работ. Для упрощения работы целочисленный массив и переменную, задающую размер массива описать на глобальном уровне. 3. Переделать описанные функции для работы с помощю открытых массивов. Уважаемые Форумчане! Помогите сделать эту лабу,пожалуйста! ![]() |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
А что ты хотел, чтобы произошло? Ты просто удалил области памяти из списка свободных блоков, теперь если ты попытаешься запросить еще раз память через GetMem, то могут быть выделены те области, в которых раньше находилась твоя матрица, вот тогда действительно данные запортятся. Пока же дополнительно память не выделяется, старые данные сохраняются.
А вообще-то неплохо было бы: procedure KillMa3x( var mxDynamic: PDynMatrix); |
![]() ![]() |
![]() |
Текстовая версия | 18.07.2025 6:11 |