- •Экзаменационный вопрос №1 базовые понятия алгоритмизации
- •Экзаменационный вопрос №2 средства изображения алгоритмов
- •Экзаменационный вопрос № 3 базовые канонические структуры алгоритмов
- •Экзаменационный вопрос № 16. Общая характеристика языка программирования паскаль
- •Экзаменационный вопрос № 17. Программирование ввода-вывода данных различного типа
- •Экзаменационный вопрос № 18. Программирование линейных вычислительных процессов
- •Экзаменационный вопрос № 19. Программирование разветвляющихся вычислительных процессов с использованием if -then –else
- •Экзаменационный вопрос № 20. Программирование разветвляющихся вычислительных процессов с использованием оператора case
- •Экзаменационный вопрос № 21.
- •Экзаменационный вопрос № 22. Программа вычисления корней квадратного уравнения
- •Экзаменационный вопрос № 23. Программирование разветвляющихся структур с использованием в цикле операторов repeat – until
- •Экзаменационный вопрос № 24. Программа вычисления суммы бесконечного ряда
- •Экзаменационный вопрос № 25. Программирование циклических вычислительных структур
- •Экзаменационный вопрос № 26. Программирование с использованием цикла с параметрами
- •Экзаменационный вопрос № 27. Программирование циклов с постусловием
- •Экзаменационный вопрос № 28. Программирование с использованием подпрограмм
- •Экзаменационный вопрос № 29. Алгоритмы нахождения корней уравнений
- •Экзаменационный вопрос № 30. Алгоритмы численного интегрирования
- •Экзаменационный вопрос № 31. Программа вычисления определенного интеграла методом прямоугольников
- •Экзаменационный вопрос № 32. Программа вычисления определенного интеграла методом трапеций
- •Экзаменационный вопрос № 33. Программа вычисления определенного интеграла методом симпсона
- •Экзаменационный вопрос № 34. Программа вычисления корней алгебраического уравнения методом половинного деления
- •Экзаменационный вопрос № 35. Программа вычисления корней алгебраического уравнения методом ньютона
- •Экзаменационный вопрос № 36. Программа вычисления корней алгебраического уравнения методом хорд
- •Экзаменационный вопрос № 37. Программирование операций в одномерных массивах
- •Экзаменационный вопрос № 38. Программирование операций в двумерных массивах (На примере задания 1)
- •Экзаменационный вопрос № 39. Программирование операций в двумерных массивах (На примере задания 2)
- •Экзаменационный вопрос № 40. Построение графических изображений
- •Экзаменационный вопрос № 41. Программа для построения объекта с циклическим изменением цвета
- •Экзаменационный вопрос № 42. Программа для построения динамического объекта
Экзаменационный вопрос № 37. Программирование операций в одномерных массивах
Теория. Массив — структура данных для представления упорядоченного множества элементов одного типа. Он описывается в блоке VAR следующим образом:
<имя> : ARRAY [1.. <размерность>] OF <тип>,
где <имя> — имя описываемого массива, <размерность> — количество элементов в массиве, <тип> — любой из типов элементов массива.
П р и м е р
A : ARRAY [1..100] OF REAL;
B : ARRAY [1..10,7..20] OF INTEGER;
Обращение к элементу массива происходит через указание имени массива и записи в квадратных скобках через запятую конкретных индексов. Обращение к элементу A32 записывается так: A[3,2].
Задание. Cоставить программу в соответствии с пунктами задания
Исходные данные.
Даны векторы
A = (–10, 4, 8, –2, 11, 3, –90, –6, 0, 1), B = (–4, 2, 5, –16, 1, –1, 0, –9, 45, 50).
1. Найти максимальный элемент каждого из векторов.
2. Найти среднее арифметическое элементов обоих векторов.
3. Найти сумму четных элементов вектора А.
4. Произвести перестановку элементов векторов в порядке возрастания и убывания Код программы.
Program primer1; {название программы}
uses crt; {подключение стандартного пакета}
const
n=10; {задание количества элементов векторов}
A:array [1..n] of integer= (–10,4,8,–2,11,3,–90,–6,0,1); {задание матриц}
B:array [1..n] of integer= (–4,2,5,–16,1,–1,0,–9,45,50);
var
i, j: integer; {задание переменных счетчиков}
max,min,p,k, sum:integer; {переменные для хранения минимального и
максимального элементов, суммы, количества элементов}
begin;
clrscr; {очистка экрана}
{-----------------------------------------------------------------------------------------}
{нахождение максимального компонента вектора А}
{присвоение начальных значений}
max:=A[1];
for i:=2 to n do
begin;
{сравнение и переопределение}
if a[i]>=max then max:=a[i];
end;
{вывод найденных значений}
writeln('Максимальный элемент А: ',max:4);
{-----------------------------------------------------------------------------------------}
{нахождение максимального компонента вектора B}
max:=B[1]; {присвоение начальных значений}
for i:=2 to n do
begin;
if B[i]>=max then max:=B[i]; {сравнение и переопределение}
end;
{вывод найденных значений}
writeln('Максимальный элемент B: ',max:4);
{------------------------------------------------------------------------------------------}
{среднее арифметическое элементов векторов}
sum:=0;
for i:=1 to n do
sum:=sum+A[i]+B[i];
writeln('Ср. арифметическое элементов обоих векторов: ',sum/(2*n):6:3);
{------------------------------------------------------------------------------------------}
{Сумма четных элементов вектора А}
sum:=0;
for i:=1 to n do
if A[i] mod 2=0 then sum:=sum+A[i];
writeln('Сумма четных элементов вектора А: ', sum:5);
{------------------------------------------------------------------------------------------}
{перестановка по возрастанию компонент вектора А}
min:=1;
for i:=1 to n do
begin;
for j:=i+1 to n do
if A[j]<=A[min] then min:=j;
p:=A[i];
A[i]:=A[min];
A[min]:=p;
min:=i+1;
end;
{Вывод вектора А после преобразования}
write('Компоненты А по возрастанию: (');
For i:=1 to n do
write(A[i]:4);
writeln(')');
{------------------------------------------------------------------------------------------}
{перестановка по убыванию компонент вектора В}
max:=1;
for i:=1 to n do
begin;
for j:=i+1 to n do
if B[j]>=B[max] then max:=j;
p:=B[i];
B[i]:=B[max];
B[max]:=p;
max:=i+1;
end;
{Вывод вектора В после преобразования}
write('Компоненты В по убыванию: (');
For i:=1 to n do
write(B[i]:4);
writeln(')');
readln;{ожидание нажатия клавиши Ввод}
end.
