Накопление суммы и произведения 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Накопление суммы и произведения



Пример. Дано N чисел. Вычислить и напечатать сумму и произведение N чисел.

Данные числа – это элементы массива, обозначаемые A(I), каждому числу соответствует определенное значение индекса I, где I = 1÷ N. Получаем А(1), А(2)…А(N).

Пусть через S обозначим символ, в котором постепенно будем накапливать сумму: к предыдущему значению суммы прибавляем очередное данное число, т.е. S = S + A(I).

Начальное значение приравняем S = 0. При I = 1 имеем S = S + A(1) = А(1). Чтобы прибавить следующее число, необходимо изменить I, чтобы I = 2, тогда S = A(I) + А(2) и т.д. На последнем этапе прибавляем к предыдущему значению суммы последнее число, при I = N, получим:

.

Аналогичны рассуждения для получения произведения. Искомое значение накапливаемых чисел обозначим Р. Выражение, которое реализует постепенное накопление произведения, имеет вид: P = P A(I).

Начальное значение Р должно быть равно: Р = 1.

Блок-схема приведена на рис. 6.

Верхняя часть алгоритма предусмотрена для резервирования памяти машины и размещения в ней элементов массива А(I). Нижняя часть алгоритма выполняет выборку из памяти введенных элементов массива А(I) и действия сложения и умножения.

В представленной блок-схеме блоки 3, 4, 5, 6 показывают последовательность правильной организации ввода элементов одномерного массива А(N) в цикле. Сокращенный вариант организации ввода элементов одномерного массива А(N) в цикле можно показать всего одним блоком , который заменит четыре блока (блоки 3, 4, 5, 6).

Этим правилом воспользуемся в своем дальнейшем изложении.

При организации циклического процесса в программе использован оператор цикла с параметром FOR.

Program summa;

type mas =array[1..100] of real;

var i, n: integer;

A: mas; P, sum: real;

begin

writeln (‘ввести размер массива’);

readln (n);

FOR i:=1 to n do

begin

writeln (‘ввести число’);

readln (A [ i ]);

end;

writeln (‘данный массив’);

FOR i:=1 to n do

writeln (A [I]:4:1);

S:=0; P:=1;

FOR i:=1 to n do

begin

S:= S + A (i);

P:= P * A (i);

end;

writeln (‘сумма=’, S:6:1, ‘ произведение=’, P:9:2);

end.

 

 


Количество чисел в массиве (размер)

 

Индекс порядкового номера первого эл-та

 

Ввод элемента массива А (I)

 

Формирование очередного номера элемента

массива A (I)

Проверка, все ли элементы массива A(I)

введены

 

Вывод всех элементов массива A(I) на экран

дисплея

 

Начальные значения суммы и произведения

 

Индекс первого элемента

 

Выполнение действий сложения и

умножения

Изменение индекса для выборки

следующего элемента из массива A(I)

Проверка, все ли элементы массива A(I)

перебрали

 

Вывод суммы и произведения элементов

массива A(I) на дисплей

 

 

Рис. 6. Алгоритм вычисления суммы и произведения элементов массива A(I)



Поделиться:


Последнее изменение этой страницы: 2016-12-16; просмотров: 356; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.218.61.16 (0.008 с.)