Лабораторная работа №10: «Итерационные ЦВП с управлением по индексу и функции. Вариационный ряд».
Работу выполнила: Башманова Людмила, ИВТ, ФИТ, 1 курс, РГПУ им. А. И. Герцена
Цель работы: Решить предложенные задачи с использованием ИЦВП с управление по индексу и функции.
Используемое оборудование: ПК, Lazarus.
Задача 1
1. Постановка задачи.
Дан одномерный массив. Упорядочить его по убыванию.
2. Математическая модель.
Если a[i] mod 2 = 0 то sum=sum+a[i]
3. Блок-схема
4. Список идентификаторов.
Имя | Смысл | Тип |
A | Элементы массива | Integer |
N | Кол-во элементов массива | Integer |
I | Счетчик | Integer |
J | Счетчик | Integer |
B | Переменная для хранения | Integer |
K | Индекс ср эл-та | Integer |
M | Индекс ср эл-та | Integer |
5. Код программы.
program z1;
{$mode objfpc}{$H+}
uses
{$IFDEF UNIX}{$IFDEF UseCThreads}
cthreads,
{$ENDIF}{$ENDIF}
Classes, Math;
var a:array of integer;
i, n, b, k, m, j:integer;
begin
writeln ('Введите кол-во эл-тов массива');
readln (n);
writeln ('Введите эл-ты массива');
setlength (a, n);
for i:= 1 to n do
read (a[i]);
for i:= 1 to n-1 do
begin
k:= n-i+1;
m:= k;
for j:= 1 to N-i do
if a[j] < a[m]
then m:= j;
b:= a[k];
a[k]:= a[m];
a[m]:= b
end;
for i:= 1 to n do
write (a[i], ' ');
readln ();
end.
6. Результаты выполнения программы.