Код через процедуру и функцию - Pascal ABC
Формулировка задачи:
Как написать данный код через процедуру и функцию?
Решение задачи: «Код через процедуру и функцию»
textual
Листинг программы
type mas=array [1..100] of integer; procedure massiv(var a:mas;var n:integer); var i:integer; begin write('N='); readln(n); for i:=1 to n do begin write('A[',i,']='); readln(a[i]); end; end; function sred(a:mas;n:integer):real; var i,k,sum:integer; begin sum:=0; k:=0; for i:=1 to n do if i mod 2=1 then begin inc(sum,a[i]); inc(k); end; if k=0 then sred:=0 else sred:=sum/k end; var a:mas; n:integer; begin massiv(a,n); writeln('Ср.ар. с нечетными номерами ',sred(a,n):0:2); end.
Объяснение кода листинга программы
- Создается тип данных mas, который представляет собой массив целых чисел размером от 1 до 100.
- Создается процедура massiv, которая принимает два аргумента: a (переменная типа mas) и n (целое число). Внутри процедуры выводится сообщение
N=
и считывается значение переменной n. Затем происходит цикл for, который выполняется n раз. В каждой итерации цикла выводится сообщениеA[
, текущее значение переменной i (которое начинается с 1 и увеличивается на 1 с каждой итерацией),]=
. Затем считывается значение переменной a[i] и сохраняется в переменной a. - Создается функция sred, которая принимает два аргумента: a (переменная типа mas) и n (целое число). Внутри функции инициализируются две переменные: sum (сумма) и k (количество нечетных элементов). Циклом for считывается значение каждого элемента a[i] и, если i нечетное, увеличивается значение переменной sum на соответствующий элемент и увеличивается значение переменной k на 1. Если значение переменной k равно 0, то значение переменной sum делится на k и возвращается в качестве результата.
- В основной части кода создается переменная a типа mas и считывается значение переменной n. Затем вызывается процедура massiv, передавая в нее переменную a и значение n. После этого выводится среднее арифметическое всех нечетных элементов массива a с помощью функции sred, а затем выводится результат (0.0) с точностью до двух знаков после запятой.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д