Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
При работе с массивами практически всегда возникает задача настройки программы на фактическое количество элементов массива. В зависимости от применяемых средств решение этой задачи бывает различным.
Первый вариант -использование констант для задания размерностимассива.
Program First;
Const
N: integer = 10;
{ либо N = 10; }
Var
A: array [ 1..N ] of real;
I: integer;
Begin
For i:= 1 to N do
Begin
Writeln (' Введите ', i, ' -ый элемент массива ');
Readln (A [ i ])
End;
{ И далее все циклы работы с массивом используют N}
Такой способ требует перекомпиляции программы при каждом изменении числа обрабатываемых элементов.
Второй вариант - программист планирует некоторое условно максимальное (теоретическое) количество элементов, которое и используется при объявлении массива. При выполнении программа запрашивает у пользователя фактическое количество элементов массива, которое должно быть не более теоретического. На это значение и настраиваются все циклы работы с массивом.
Program Second;
Var
A: array [ 1..25 ] of real;
I, NF: integer;
Begin
Writeln ( 'Введите фактическое число элементов’,
‘ массива <= 25 ');
Readln (NF);
For i:= 1 to NF do
Begin
Writeln ( 'Введите ', i, ' -ый элемент массива ');
Readln (A [ i ])
End;
{ И далее все циклы работы с массивом используют NF}
Этот вариант более гибок и технологичен по сравнению с предыдущим, так как не требуется постоянная перекомпиляция программы, но очень нерационально расходуется память, ведь ее объем для массива всегда выделяется по указанному максимуму. Используется же только часть ее
Вариант третий - в нужный момент времени надо выделить динамическую память в требуемом объеме, а после того, как она станет не нужна, освободить ее.
Дата публикования: 2014-11-04; Прочитано: 301 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!