Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа_4_Одномерные массивы.doc
Скачиваний:
4
Добавлен:
01.04.2025
Размер:
133.12 Кб
Скачать
  1. Суммирование двух массивов а и в в результирующий массив с.

Задано 2 массива A(N) и B(N). Необходимо сформировать массив C(N), где ci=ai+bi, I=1,2,…,n.

Решение задачи сводится к организации цикла по параметру I и вычислению ci=ai+bi при каждом значении I от 1 до n.

Используемые переменные: Исходные данные: A, B - массивы-слагаемые размером N; N – размер массивов. Результат: C – сумма размером N. Вспомогательные переменные: I – индекс элемента массива (управляющая переменная).

Схема алгоритма изображена на рис.1.

Программный код: For I := 1 to N do C[I] := A[I] + B[I];

  1. Суммирование элементов массива P

Требуется вычислить сумму значений элементов массива Р, содержащего n элементов. Для вычисления суммы элементов массива необходимо организовать цикл, в котором накапливается сумма, путем прибавления значения текущего элемента массива к сумме предыдущих. Используется рекурсивная функция S=S+Ri. Начальному значению S перед циклом следует присвоить ноль.

Используемые переменные:

Исходные данные:

P – массив размером N;

N – размер массива;

Результат:

S – сумма элементов массива Р;

Вспомогательные переменные:

I – индекс элемента массива

Схема алгоритма изображена на рис. 2.

Программный код: S := 0; For I := 1 to N do S = S + P[I];

Writeln(‘сумма элементов массива Р ;S =’, S: .....);

  1. Определение количества элементов массива P, удовлетворяющих заданному логическому условию (Pi > T)

Решение задачи состоит в определении количества элементов заданного массива Р, содержащего n элементов, удовлетворяющих заданному условию. Для конкретности пусть условие имеет вид Pi>T, где Т – заданное число.

Для решения задачи организуем цикл по i и для каждого значения проверим условие Pi>T. Если условие не удовлетворяется, (т.е. PiT), переходим к следующему элементу массива, а если удовлетворяется (т.е. Pi>T), то к счетчику числа элементов, удовлетворяющих условию Pi>T, прибавляется 1.

Используемые переменные:

Исходные данные:

P- массив размером N;

N – размер массива;

T – заданное значение, с которым сравниваются элементы массива;

Результат:

K – количество элементов массива Р, удовлетворяющих условию Pi>T;

Вспомогательные переменные:

I – индекс элемента массива

Схема алгоритма изображена на рис.3.

Программный код:

Writeln('введите значение Т, с которым сравниваются элементы массива’); readln(Т);

K := 0: For I := 1 to N do IF P[I] > T Then K := K + 1;

Writeln(‘Количество элементов массива, удовлетворяющих заданному условию Pi>’,Т, ‘равно’, K);

  1. Суммирование элементов массива Р, удовлетворяющих заданному логическому условию.

Требуется найти сумму элементов массива Р, содержащего n элементов, удовлетворяющих заданному условию Pi>T.

Используемые переменные:

Исходные данные:

N – размер массива

P – массив, размером N

T – заданное значение, с которым сравниваются элементы массива

Результат:

S – Сумма элементов массива Р, удовлетворяющих условию Pi>T

Вспомогательные переменные:

I – индекс элемента массива

Схема алгоритма изображена на рис.4.

Программный код:

Writeln('введите значение Т, с которым сравниваются элементы массива'); readln (Т);

S := 0; FOR I := 1 TO N DO IF P[I] > T THEN S := S + P[I];

Writeln(‘Сумма элементов массива Р, удовлетворяющих условию Pi>’, T, ‘равна’,S);

  1. О пределение произведения элементов массива P с исключением всех нулевых

Вычисление произведения осуществляется аналогично вычислению суммы элементов массива, с той разницей, что для его накопления в цикле используется формула: PR=РR*P(I), начальное значение произведения должно быть равным единице.

Используемые переменные:

Исходные данные:

P – массив размером N

N – количество элементов в массиве

Результат:

PR – Произведение элементов массива

Вспомогательные переменные:

I – индекс элемента массива

Схема алгоритма изображена ни рис.5.

Программный код:

PR :=1;

FOR I := 1 TO N DO IF P[I]<>0 THEN PR := PR*P[I];

Writeln(‘Произведение не нулевых элементов массива Р=’, PR);