русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Контроль ошибок при работе с массивами


Дата добавления: 2015-06-12; просмотров: 899; Нарушение авторских прав


 

Самой распространенной ошибкой при работе с массивами является выход индексов за допустимые диапазоны. Для исключения таких ошибок в среде Turbo Pascal предусмотрена директива компилятора {R}. При указании в программе директивы {$R+} все массивы проверяются на предмет нахождения их внутри указанных границ. Если обнаруживается нарушение диапазона, программа завершает свою работу, выводя сообщение об ошибке выполнения. Если директива не используется (этот режим принят по умолчанию) , выход индекса за пределы допустимого диапазона не приведет к прекращению работы программы. Но при обращении к ''несуществующему'' элементу массива даст неопределенный результат, что может сделать ход дальнейшего выполнения программы непредсказуемым.

Следует заметить, что применение директивы {R+} несколько замедляет выполнение программы и увеличивает ее размер. Поэтому рекомендуется использовать эту директиву при отладке, а затем ее удалить из текста программы.

 

Ход работы:

 

1. Создать одномерный вещественный массив из 25 элементов. Определить максимальный и минимальный элементы массива и поменять их местами. Полученный результат вывести на экран.

PROGRAM MAS;

VAR

M : ARRAY [1 . . 25] OF REAL; {Вещественный массив}

MAX, MIN, MN : REAL;

I, K, N : INTEGER; {Вспомогательные переменные}

BEGIN

FOR I : = 1 TO 25 DO READ ( M [I] ) ; {Ввод вещественного массива из 25 элементов}

MAX : = M [1] ; K : = 1 ; {Переменным MAX и MIN присваиваем значение первого элемента массива}

MIN : = M [1] ; N : = 1 ;

FOR I := 2 TO 25 DO {Определяем максимальный и минимальный элементы массива и их индексы}

BEGIN

IF M [I] > MAX THEN

BEGIN

MAX : = M [I] ;

K : = I ;

END ;



IF M[I] < MIN THEN

BEGIN

MIN : = M [I] ;

N : = I ;

END ;



END ;



{Меняем местами максимальный и минимальный элементы}

MN : = M [K] ;

M [K] : = M [N] ;

M [N] : = MN ;

{Вывод полученного массива на экран }

FOR I : = 1 TO 25 DO WRITELN ( M[I] ) ;

END.

Контрольное задание:

 

1. Создать одномерный вещественный массив из N элементов. Определить максимальный и минимальный элементы массива. Очистить экран. Полученный результат вывести на экран.

 

Контрольные вопросы

1. Что такое массив данных ?

2. Какими способами можно описать массивы ?

3. Какой максимальный размер может иметь массив ?

4. Как происходит доступ к отдельным элементам массива ?

5. Могут ли быть многомерные массивы ?

6. Какие могут быть типы элементов массивов ?

7. Какие могут быть типы индексов массивов ?

8. Можно ли всем элементам одного массива присвоить значения элементов другого массива ?

9. Как происходит ввод-вывод одномерных и многомерных массивов?

10. Какие действия можно производить с отдельными элементами массивов ?

11. Чем отличаются массивы данных от записей ?

12. Чем отличаются массивы от других структурированных типов данных ?

13. Как задается типизированная константа-массив ?

14. Как хранятся массивы в памяти компьютера ?

15. Можно ли сравнивать массивы ?



<== предыдущая лекция | следующая лекция ==>
 | Строковые переменные, их описание. Длина строки. Операции над строками


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.254 сек.