КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Накопление суммы и произведения
Пример. Даны 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) в цикле можно показать всего одним блоком , который по сути заменит 4 блока (блоки 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 begin writeln (A[I]:3:1, ‘ ’); end; S=0; P=1; FOR I=1 to n do begin S:=S+A(I); P:=P*A(I); end; writeln; writeln (‘сумма=’, S:6:1, ‘ ’, ‘произведение=’, P:9:1); end.
Количество чисел в массиве (размер) Индекс порядкового номера первого эл-та Ввод первого элемента массива А(1) Формирование очередного номера элемента массива A(I) Проверка, все ли элементы массива A(I), введены Вывод всех элементов массива A(I) на экран дисплея Начальные значения суммы и произведения Индекс первого элемента Выполнение действий сложения и умножения Изменение индекса для выборки следующего элемента из массива A(I) Проверка, все ли элементы массива A(I), перебрали Вывод суммы и произведения элементов массива A(I) на дисплей
Рис. 6. Алгоритм вычисления суммы и произведения элементов массива A(I)
Дата добавления: 2014-12-10; Просмотров: 579; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |