русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Подсчёт суммы, произведения, количества элементов массива, удовлетворяющих заданному условию


Дата добавления: 2015-07-09; просмотров: 10463; Нарушение авторских прав


Для нахождения суммы элементов массива воспользуемся методом накопления. Для этого заведём дополнительную переменную S, к которой поочерёдно станем добавлять значения элементов массива. Т.к. при объявлении любой переменной на языке ТурбоПаскаль её значение не определено, необходимо занести в переменную S такое значение, которое не повлияет на конечный результат суммирования элементов массива. Этим значением является 0.

Далее необходимо к значению переменной S добавлять элементы массива с номерами 1, 2, ..., N, т.е. выполнять следующие действия:

S = S +А[1]

S = S + A[2]

. . . . . . . . . . .

S = S + A[N]

Отсюда видно, что для вычисления суммы элементов массива необходимо использовать цикл, который будет повторять оператор S=S+A[i], где i поочерёдно принимает значения от 1 до N с шагом 1. После завершения N итераций цикла значение суммы будет вычислено окончательно и его можно обработать по условию задачи, например, вывести на экран.

Блок-схема алгоритма нахождения суммы приведена на рисунке 5. Фрагмент программы записан ниже:


• • •

S:=0;

for i:=l to N do

S:=S+A[i];

writeln( Сумма S=' , S);

• • •

 

Рис.5

 

В случае, если необходимо найти сумму элементов, удовлетворяющих некоторым условиям (положительные, отрицательные, четные и т.п.), то в этом случае каждый элемент массива необходимо будет сравнивать с некоторым значением, заданным в условии задачи. На рис.6 представлена блок-схема алгоритма поиска суммы положительных значений элементов массива. В этом случае каждый элемент массива сравнивается с 0, и, если он больше 0, то он включается в сумму. Фрагмент программы приводится ниже.

 

 

S := 0;

for i :=1 to N do

if A[i] > 0 then

S := S + A[i];

writeln (‘S= ‘,S);

 

Рис. 6

На рис. 7 представлена блок-схема алгоритма поиска суммы четных элементов массива. Известно, что четные элементы делятся на 2 без остатка. В ТР существует математическая операция MOD, позволяющая определить остаток от деления числа а на некоторое число р: а MOD р. Следует заметить, что операнды а и р могут быть только целыми числами. Например:



4 MOD 2 = 0 ( т.к. 4 – четное число);

5 MOD 2 = 1 ( т.к. 5 – нечетное число);

7 MOD 3 = 1 ( т.к. 7 не кратно 3 ).

Фрагмент программы приводится ниже.

 

S := 0;

for i :=1 to N do

if A[i] MOD 2 = 0 then

S := S + A[i];

writeln (‘S= ‘,S);

Рис. 7

 

Аналогично следует вычислять произведение элементов массива, за исключением того, что в качестве начального значения произведения следует принять 1, т.к. именно умножение на 1 не повлияет на искомое произведение.

На рис. 8 представлена блок-схема алгоритма поиска произведения Р элементов массива, попадающих в интервал от –2 до 9. Фрагмент программы приводится ниже.

 

P :=1;

for i:=1 to N do

if (A[i] => -2) and (A[i] <= 9) then

P := P * A[i];

writeln(‘P= ‘, P);

 

Рис. 8


 

При нахождении количества элементов массива следует воспользоваться теми же рассуждениями, что и в ранее рассмотренных случаях. Обычно требуется подсчитать количество элементов, удовлетворяющих некоторым заданным условиям, например, количество отрицательных элементов. Для решения этой задачи поочерёдно сравним каждый элемент массива с 0, и при обнаружении отрицательного увеличим количество на 1. Когда все элементы массива закончатся, искомое количество будет окончательно подсчитано и его можно обработать по условию задачи.

Блок-схема алгоритма нахождения количества отрицательных элементов массива похожа на блок-схему на рисунке 6. Фрагмент программы, соответствующий этой блок-схеме, приведён ниже.

К:=0;

for i:=l to N do

if A[i]>0 then K:=K+1;

writeln ( ‘Количество равно’, К);



<== предыдущая лекция | следующая лекция ==>
Вывод массива на экран | Поиск значений среднего арифметического и среднего геометрического элементов массива


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.