Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Ввод и вывод элементов массива




 

Ввод и вывод элементов массивов происходит поэлементно. Значения элементам массива можно присвоить с помощью оператора присваивания или путем считывания из файла, но на практике они чаще всего вводятся с клавиатуры или с помощью генератора случайных чисел. Последний способ целесообразно использовать тогда, когда количество элементов массива достаточно велико.

 

Примеры ввода одномерных массивов:

а) ввод с клавиатуры

FOR I: = 1 TO N DO READ (M [I]);

б) ввод с помощью генератора случайных чисел

RANDOMIZE; { инициализация генератора случайных чисел }

FOR I: = 1 TO N DO M [I]: = - 25 + RANDOM (D);

Стандартная функция Random формирует случайное целое число из диапазона от 0 до D-1. При этом i -му элементу массива будет присвоена сумма выбранного случайного числа и -25. Таким образом, массив будет заполняться целыми случайными числами от -25 до -25 + (D-1). Например, если выбрать D равным 51, то массив будет заполняться случайными числами от -25 до +25.

Вывод одномерных массивов происходит аналогичным образом, например:

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

Ввод двумерных массивов (матриц) производится с помощью вложенного оператора FOR:

FOR I: = 1 TO N DO

FOR J: = 1 TO K DO

READ (M [I, J]);

Вывод значений элементов двумерных массивов производится аналогичным образом с использованием операторов вывода WRITE или WRITELN:

FOR I: = 1 TO N DO

FOR J: = 1 TO K DO

WRITELN (M [I, J])

Таким же образом, поэлементно, происходит ввод и вывод многомерных массивов.

4. Решение задач-примеров

 

В качестве примера рассмотрим решение двух задач с одномерным и двухмерным массивами.

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

PROGRAM PRIM1;

VAR

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

MAX, MIN: REAL;

I: INTEGER; { Вспомогательная переменная }

BEGIN

{ Ввод вещественного массива из 20 элементов }

 

FOR I: = 1 TO 20 DO READ (M [I]);

 

{ Переменным MAX и MIN присваиваем значение первого элемента массива }

MAX: = M [1];

MIN: = M [1];

{ Определяем максимальный и минимальный элементы массива }

FOR I:= 2 TO 25 DO

BEGIN

IF M [I] > MAX THEN MAX: = M [I];

IF M[I] < MIN THEN MIN: = M [I];

END;

 

{ Вывод результатов на экран }

WRITELN (’MAX= ’, MAX);

WRITELN (’MIN= ’, MIN)

END.

Пример 2.Создать целочисленную матрицу размером 6х8. Определить суммы положительных элементов каждой строки матрицы.

 

Текст программы:

PROGRAM PRIM2;

VAR

A: ARRAY [1.. 6, 1.. 8] OF INTEGER;

I, J, S: INTEGER;

BEGIN

{ Ввод целочисленной матрицы 6х8 }

FOR I:= 1 TO 6 DO

FOR J: = 1 TO 8 DO

READ (A[ I, J]);

{ Вычисление суммы положительных элементов каждой строки матрицы }

FOR I: = 1 TO 6 DO

BEGIN

S: = 0;

FOR J: = 1 TO 8 DO

IF A [ I, J ] > 0 THEN S: = S + A [ I, J ];

WRITELN (S)

END;

END.

Порядок выполнения работы

 

Для выполнения работы необходимо:

1. Повторить правила техники безопасности при работе с вычислительной техникой.

2. Изучить раздел "Массивы" лекционного курса, а также теоретическую часть настоящих методических указаний.

3. Получить у преподавателя вариант задания (варианты заданий приведены в приложении).

4. Написать и отладить программу в интегрированной среде Delphi, результаты выполнения показать преподавателю.

5. В соответствии с требованиями, приведенными в разделе 6, оформить отчет по лабораторной работе.

6. Защитить лабораторную работу, продемонстрировав препода­вателю:

отчет по лабораторной работе;

умение решать аналогичные задачи;

теоретические знания.

При подготовке к защите для самопроверки рекомендуется ответить на контрольные вопросы, приведенные в разделе 6.

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

 

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

2. Какими способами можно объявить массивы в программе?

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

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

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

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

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

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

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

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

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

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

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

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

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

Содержание и оформление отчета

 

Отчет должен содержать:

● титульный лист, название и цель работы;

● вариант задания;

● схема алгоритма решения задачи;

● листинг программы на языке Delphi;

● выводы по работе.

Приложение

ВАРИАНТЫ ЗАДАНИЙ

 

Вариант 1

1. Создать одномерный целочисленный массив. Найти сумму отрицательных элементов массива и произведение положительных.

2. Вычислить сумму квадратов нечетных элементов целочисленного массива.

3. Сформировать вещественную матрицу. Определить количество положительных элементов каждого столбца матрицы.

 

Вариант 2

1. Создать одномерный целочисленный массив.

Упорядочить массив по возрастанию значений его элементов.

2. Создать символьный массив данных. Подсчитать количество вхождений в массив буквы А.

3.Сформировать целочисленную матрицу. Определить сумму положительных элементов главной диагонали матрицы.

Вариант 3

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

2.Найти произведение двух целочисленных матриц.

3. Создать массив, состоящий из букв латинского алфавита. Подсчитать количество гласных букв.

 

Вариант 4

1.Сформировать одномерный вещественный массив. Распечатать его в обратном порядке.

2. Сформировать одномерный целочисленный массив. Определить, есть ли в данном массиве положительные элементы, которые больше заданного числа n.

3. Сформировать вещественную матрицу. Вычислить сумму и количество положительных элементов каждой строки матрицы.

Вариант 5

1. Создать одномерный вещественный массив. Определить число положительных, отрицательных и нулевых элементов массива.

2. Сформировать целочисленную матрицу. Упорядочить по возрастанию элементы каждой строки матрицы.

3. Создать символьный массив данных. Заменить все символы А массива на символы В.

 

Вариант 6

1.Сформировать целочисленную матрицу. Определить минимальный элемент второй строки матрицы.

2.Создать одномерный вещественный массив. Найти среднее арифметическое элементов массива.

3.Найти сумму двух целочисленных матриц.

 

 

Вариант 7

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

2.Сформировать целочисленную матрицу. Найти максимальный элемент в каждой строке матрицы и выбрать наибольший из них.

3. Сформировать матрицу, состоящую из латинских букв. Отсортировать каждую строку матрицы в алфавитном порядке.

Вариант 8

1. Создать одномерный вещественный массив. Найти разность между максимальным и минимальным элементами массива.

2. Создать матрицу, состоящую из вещественных чисел. Сформировать одномерный массив, который содержит только положительные элементы матрицы и вывести его на экран.

3. Создать одномерный целочисленный массив. Найти сумму четных элементов массива.

 

Вариант 9

1. Создать одномерный целочисленный массив. Подсчитать количество элементов массива, лежащих в заданном диапазоне.

2.Найти сумму двух вещественных матриц.

3. Создать одномерный целочисленный массив. Все положительные элементы массива заменить на нули.

 

Вариант 10

1. Создать одномерный целочисленный массив.

Упорядочить массив по убыванию значений его элементов.

2.Сформировать вещественную матрицу. Определить количество отрицательных элементов третьего столбца матрицы.

3. Создать одномерный целочисленный массив. Найти произведение отрицательных элементов массива и их количество.

 

ПРИМЕЧАНИЕ

1.Размер (количество элементов) массива задается преподавателем или выбирается студентом самостоятельно.

2. Исходные массивы могут формироваться путем ввода с клавиатуры или с помощью генератора случайных чисел.

 

 

СПИСОК ЛИТЕРАТУРЫ

 

1. Фаронов В.В. Delphi. Программирование на языке высокого уровня. Спб.: “Питер”, 2010. - 640 с.

2. Культин Н.Б. Основы программирования в Delphi. Спб.: “БХВ-Петербург”, 2010. - 434 с.

3. Гофман В., Хомоненко А. Delphi. - Спб.: “BHV”, 2007.- 800 с.

4. Дарахвелидзе П., Марков Е. Delphi - среда визуального программирования. - Спб.: “BHV”, 2007. - 552 с.

5. Архангельский А.Я. Программирование в Delphi. М.: “Бином-Пресс”, 2008. - 816 с.

 

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...