
- •Оглавление
- •Предисловие
- •Введение
- •1. Разветвляющиеся вычислительные процессы
- •If логическое_выражение then оператор1 еlse оператор2;
- •If логическое_выражение then оператор1;
- •Пример 1. Вычислить значение функции y(X)
- •Программа
- •Программа
- •2. Циклические вычислительные процессы
- •2.1. Циклы с заданным числом повторений
- •2.1.1. Вычисление массива значений функции
- •2.1.2. Обработка одномерных массивов
- •2.1.2.1. Поиск наименьшего (наибольшего) элемента массива
- •2.1.2.2. Вычисление суммы и количества элементов массива
- •2.1.2.3. Вычисление произведения элементов массива
- •2.1.2.4. Поиск элементов массива по заданному критерию
- •2.2. Циклы с неизвестным числом повторений
- •2.2.1. Табулирование функции
- •2.2.2 Итерационные вычислительные процессы
- •2.2.3. Вычисление суммы членов бесконечного ряда
- •2.3. Сложные циклы
- •2.3.1. Пример алгоритма, содержащего вложенный цикл
- •Программа
- •2.3.2. Обработка двумерных массивов (матриц)
- •2.3.2.1. Вычисление суммы и количества элементов массива
- •2.3.2.2. Поиск элементов массива по заданному критерию
- •3. Работа с текстовыми файлами
- •Программа
- •4. Функции в языке Pascal
- •5. Процедуры в языке Pascal
- •Программа
- •Программа
- •Исходные данные
- •Результаты
- •6. Модули в языке Pascal
- •Unit имя-модуля;
- •Uses имя-модуля1, имя-модуля2, …, имя-модуляN;
- •Пример модуля (библиотеки) с именем Unitmatr
- •Пример рабочей программы (программы пользователя)
- •Литература Методические пособия кафедры
2.1.2.2. Вычисление суммы и количества элементов массива
Для вычисления суммы и количества элементов массива нужно переменным (например, s и k), в которых будут накапливаться сумма элементов массива и их количество, присвоить начальные значения, равные нулю, а затем последовательно добавлять элементы массива к содержимому переменной s и единицы к содержимому переменной k.
Пример 7. Найти сумму и количество отрицательных элементов массива А, состоящего из n элементов (n20).
Программа Схема алгоритма
Program Prim7;
var
a : array[1..20] of real;
i, n, k : integer;
s : real;
begin
writeln('Введите n');
readln(n);
writeln('Введите массив');
for i:=1 to n do
read(a[i]);
s:=0; k:=0;
for i:=1 to n do
if a[i]<0 then
begin
s:=s+a[i];
k:=k+1;
end;
writeln('s=', s:6:1, ' k=', k:2)
end.
Исходные данные: Результат:
n = 9 s= -19.0 k= 4
Массив A
4 3 –2 5 7 - 4 -8 3 -5
2.1.2.3. Вычисление произведения элементов массива
Для вычисления произведения элементов массива нужно переменной, в которой будет накапливаться произведение (например, p), присвоить начальное значение, равное единице, а затем последовательно умножать содержимое этой переменной на соответствующий элемент массива.
Пример 8. Найти среднее геометрическое положительных элементов массива D, состоящего из n элементов (n20). Среднее геометрическое – это корень k – ой степени из произведения k элементов массива.
Программа Схема алгоритма
P
rogram
Prim8;
var
d : array[1..20] of real;
i,n,k : integer;
p : real;
begin
writeln('Введите n');
readln(n);
writeln('Введите массив');
for i:=1 to n do
read(d[i]);
p:=1;
k:=0;
for i:=1 to n do
if d[i]>0 then
begin
p:=p*d[i];
k:=k+1;
end;
if k=0 then
writeln('Положительных элементов нет')
else
begin
p:=exp(1/k*ln(p));
writeln('p=', p:7:2);
end;
end.
Исходные данные: Результат:
I вариант
n = 11
Массив D
3 5 4 -7 1 2 -9 6 -8 3 -10 p= 2.99
II вариант
n = 5
Массив D
-2 -5 -6 -9 -7 Положительных элементов нет
Пример 9. Найти произведение элементов массива С, состоящего из n элементов, имеющих чётные индексы (n20).
Для вычисления произведения элементов массива в этом примере будем использовать оператор repeat-until.
Для получения значения чётного индекса введем переменную i, начальное значение которой зададим равным двум (i:=2), а после каждого выполнения цикла будем последовательно увеличивать значение i на два (i:=i+2).
Программа Схема алгоритма
Program Prim9;
var
c : array[1..20] of real;
i,n : integer;
р : real;
begin
writeln('Введите n');
readln(n);
writeln('Введите массив');
for i:=1 to n do
read(c[i]);
р:=1;
i:=2;
repeat
p:=p*c[i];
i:=i+2;
until i>n;
writeln('p=', p:8:2);
end.
Исходные данные: Результат:
n = 9 p= 210.00
Массив C
3 2 -1 7 5 -3 8 -5 1