- •Основы алгоритмизации и программирования
- •Часть 1
- •Содержание
- •Введение. Цель лабораторного практикума
- •1. Лабораторная работа №1. Простейшие программы
- •1.1. Основные конструкции языка программирования Pascal.
- •2.1. Вычислительные процессы с разветвляющейся структурой
- •1.2. Пример составления программы
- •1.3. Варианты заданий на лабораторную работу №1
- •2. Лабораторная работа №2. Разветвляюшиеся вычислительные процессы
- •2.2. Варианты заданий на лабораторную работу №2
- •3. Лабораторная работа №3. Табулирование функции
- •3.1. Вычислительные процессы с циклами
- •3.2. Варианты заданий на лабораторную работу №3
- •4. Лабораторная работа №4. Обработка одномерного массива
- •4.1. Обработка одномерных массивов
- •4.2. Варианты заданий на лабораторную работу №4
- •5. Лабораторная работа №5. Обработка двумерных массивов
- •5.1. Варианты заданий на лабораторную работу №5
- •6. Лабораторная работа №6. Подпрограммы
- •6.1. Разработка вычислительных процессов сложной структуры
- •6.2. Варианты заданий на лабораторную работу №6
- •7. Лабораторная работа №7. Решение нелинейных алгебраических уравнений
- •7.1. Методы решения нелинейных уравнений
- •7.2. Варианты заданий на лабораторную работу №7
- •8. Рекомендации по выполнению лабораторных работ
- •9. Рекомендации по выполнению контрольной работы
- •Рекомендуемая литература
4. Лабораторная работа №4. Обработка одномерного массива
Цель работы: изучить приемы работы с одномерными массивами при решении типовых задач.
4.1. Обработка одномерных массивов
Массив – это множество переменных, у которых одно имя и обращение к каждой из них производится по номеру (индексу). Количество индексов определяет размерность массива. В практических задачах наиболее часто используют одномерные массивы (списки, вектора) и двумерные массивы (матрицы, таблицы).
Описание массива в Pascalе осуществляется с помощью описателя array. Например, описание одномерного массива из 10 целых чисел будет выглядеть так:
var a:array[1..10] of integer;
Обработка массива, обычно заключается ввыполнении однотипных операций над каждым элементом массива и может быть представлена следующей БСА (рисунок 4).
4.2. Варианты заданий на лабораторную работу №4
Ввести одномерный массив. Количество и тип элементов выбрать самим.
Выполнить обработку массива по варианту таблицы 3. Исходный массив и результат вывести на экран.
Пример 4. В одномерном массиве подсчитать количество положительных и отрицательных чисел и вывести их соотношение.
program z4;
var mas:array[1..10] of real;
var kpol,kotr,i:integer;
begin
Writeln (‘Vvedite 10 znachenii:’);
for i:=1 to 10 do
begin write(‘mas[‘,i,’]=’); readln (mas[i]);
end;
kpol:=0;
kotr:=0;
for i:=1 to 10 do
if mas[i]>0 then inc(kpol)
else if mas[i]<0 then inc(kotr);
Writeln (‚Sootnoshenie=’,kpol,’ k ‚,kotr);
end.
Таблица 3. Варианты заданий
Вариант |
Задание |
|
|
Преобразовать массив, поменяв местами минимальное и первое числа массива. |
|
|
Найти минимальный положительный элемент массива и его порядковый номер |
|
|
Преобразовать массив, расположив сначала все отрицательные, затем все положительные числа (порядок следования чисел внутри группы не изменять). |
|
|
Преобразовать массив, поменяв местами минимальное и максимальное числа массива. |
|
|
Вывести на экран числа, встречающиеся в массиве только один раз. |
|
|
Преобразовать массив, расположив в нем числа в обратной последовательности. |
|
|
Преобразовать массив, умножив все положительные числа на максимальное число этого массива. |
|
|
Найти первое отрицательное число в массиве |
|
|
Определить количество положительных, количество отрицательных и количество нулевых чисел массива. |
|
|
Найти минимальное и максимальное числа массива и их порядковые номера |
|
|
Упорядочить массив по возрастанию. |
|
|
Найти максимальный элемент массива и поставить его на место первого элемента, а первый – на место максимального (т.е. поменять местами первый и максимальный элементы). |
|
|
Найти минимальное и максимальное числа массива и их порядковые номера. |
|
|
Определить количество положительных , количество отрицательных и количество нулевых чисел массива. |
|
|
Вывести на экран числа, встречающиеся в массиве более одного раза. |
|
|
Преобразовать массив, умножив все отрицательные числа на минимальное число этого массива |
|
|
Преобразовать массив, заменив все отрицательные числа на -1, а положительные на +1, нули оставить нулями. |
|
|
Найти минимальный элемент массива и поставить его на место последнего элемента, а последний –на место минимального (т.е. поменять местами последний и минимальный элементы). |
|
|
Вывести на экран все числа массива кратные 7 или 5. |
|
|
Преобразовать массив, заменив все отрицательные числа на среднее арифметическое отрицательных чисел массива |
|
|
Найти среднее арифметическое всех положительных чисел массива. Вывести на экран все числа массива, которые больше, чем это среднее арифметическое. |
|
|
Найти максимальный отрицательный элемент массива и его порядковый номер |
|
|
Преобразовать массив, расположив сначала все положительные, затем все отрицательные числа(порядок следования чисел внутри группы не изменять). |
|
|
Преобразовать массив, поменяв местами максимальный и последний элементы массива. |
|
|
Упорядочить массив по убыванию. |
