Студопедия — Вопрос алгоритм вычисления суммы элементов одномерного массива
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

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






Вычисление суммы значений элементов массива  
Вычисление суммы значений n элементов одномерного массива А: s=a[1]+a[2]+…+a[n] Комментарий:перед входом в цикл обнуляем переменную для вычисления суммы (s). В цикле, добавив к сумме значение элемента с номером 1 (при i=1), записываем полученное значение в ту же самую переменную s. Выполняя эту операцию nраз (при i=1, 2,…, n), после выхода из цикла получаем в переменной s значениеs=a[1]+a[2]+…+ a[n].   s:=0; For i:=1 to n do s:=s+a[i]; Writeln(‘Сумма=’,s);  
Вычисление суммы значений элементов одномерного массива А, удовлетворяющих некоторому условию   Комментарий:добавляем к сумме в цикле только те значения массива, которые удовлетворяют заданному условию. s:=0; For i:=1 to n do if условие then s:=s+a[i]; Writeln(‘Сумма=’,s);  
Примеры:  
  1. Вычисление суммы элементов массива А, значения которых больше 1 и меньше 3     s:=0; For i:=1 to n do if (a[i]>1) and (a[i]<3) then s:=s+a[i]; Writeln(‘Сумма=’,s);
2. Вычисление суммы значений элементов массива А, целая часть которых делится на 2 без остатка   Комментарий: функция trunc вычисляет целую часть числа, являющегося значениемa[i]. При этом получается результат целого типа. Операция mod дает остаток от деления числа на 2. Если остаток равен 0, это означает, что число делится на 2 без остатка.   s:=0; For i:=1 to n do if trunc(a[i]) mod 2=0 then s:=s+a[i]; Writeln(‘Сумма=’,s);  
3. Вычисление суммы значений элементов массива А, имеющих нечетные номера Комментарий:добавляем к сумме значения только тех элементов, номера которых (i) при делении на 2 дают остаток, не равный 0 (остаток от деления в этом случае равен 1).   s:=0; For i:=1 to n do if i mod 2 <> 0 then s:=s+a[i]; Writeln(‘Сумма=’,s);    
4. Вычисление суммы значений элементов массива А, имеющих номера 1,3,5,7 и т.д. доn   К началу страницы s:=0; i:=1; While i<= n do begin s:=s+a[i]; i:=i+2 end; Writeln(‘Сумма=’,s);  
 

Вопрос алгоритм вычисления максимального элемента одномерного массива

Вычисление наибольшего и наименьшего значений элементов массиве  
Вычисление наибольшего значения среди всех элементов массива А и вывод на экран номеров элементов, равных по значению наибольшему элементу.   Комментарий:первоначально за наибольшее значение принимается значение элемента массива с номером 1. Затем в цикле по переменной i наибольшее значение (переменная max) сравнивается с каждым из элементов массива a[i]. Если при сравнении оказывается, что сравниваемый элемент массива имеет большее значение, чем max, то значение этого элемента принимается за наибольшее. Для вывода на экран номеров элементов, равных по значению наибольшему (их может быть несколько), выполняется сравнение значения каждого элемента с найденным в предыдущем цикле наибольшим значением на совпадение. В случае совпадения значений на экран выводится номер элемента.   max:=a[1]; For i:=2 to n do if max < a[i] then max:= a[i]; Writeln(‘Наибольшее значение =’,max); For i:=1 to n do if max = a[i] then Writeln(‘Номерэлемента =’, i);    
Вычисление наименьшего значения среди элементов массива А, имеющих нечетные номера. min:=a[1]; For i:=1 to n do if (i mod 2=1) and (min > a[i])then min:= a[i]; Writeln(‘Наименьшее значение =’,min);  
Вычисление наибольшего значения среди элементов массива А, имеющих значение в диапазоне от 1 до 10.   Комментарий:В первой части программы просматриваются элементы массива с целью найти хотя бы один элемент со значением в диапазоне от 1 до 10. Если такой элемент находится, то он принимается за начальное значение наибольшего элемента массива (max) и происходит выход их цикла. В противном случае значение max остается равным 0. В случае max=0 поиск наибольшего элемента не выполняется. Еслиmax не равен 0, то выполняется поиск наибольшего элемента по стандартной схеме.     К началу страницы max:=0; For i:=1 to n do if (a[i]>=1) and (a[i]=<10) then begin max:=a[i]; break;{выход их цикла} end; if max=0 then Writeln(‘В массиве нет элементов в диапаз. от 1 до 10’) else For i:=1 to n do if max < a[i] then max:= a[i]; Writeln(‘Наименьшее значение =’,min);
 







Дата добавления: 2015-12-04; просмотров: 202. Нарушение авторских прав; Мы поможем в написании вашей работы!



Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

ТЕРМОДИНАМИКА БИОЛОГИЧЕСКИХ СИСТЕМ. 1. Особенности термодинамического метода изучения биологических систем. Основные понятия термодинамики. Термодинамикой называется раздел физики...

Травматическая окклюзия и ее клинические признаки При пародонтите и парадонтозе резистентность тканей пародонта падает...

Подкожное введение сывороток по методу Безредки. С целью предупреждения развития анафилактического шока и других аллергических реак­ций при введении иммунных сывороток используют метод Безредки для определения реакции больного на введение сыворотки...

Принципы резекции желудка по типу Бильрот 1, Бильрот 2; операция Гофмейстера-Финстерера. Гастрэктомия Резекция желудка – удаление части желудка: а) дистальная – удаляют 2/3 желудка б) проксимальная – удаляют 95% желудка. Показания...

Ваготомия. Дренирующие операции Ваготомия – денервация зон желудка, секретирующих соляную кислоту, путем пересечения блуждающих нервов или их ветвей...

Билиодигестивные анастомозы Показания для наложения билиодигестивных анастомозов: 1. нарушения проходимости терминального отдела холедоха при доброкачественной патологии (стенозы и стриктуры холедоха) 2. опухоли большого дуоденального сосочка...

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия