Код через процедуру и функцию - Pascal ABC
Формулировка задачи:
Как написать данный код через процедуру и функцию?
Листинг программы
- var a:array [1..100] of integer;
- i,sum,k,n: integer;
- begin
- write('N=');
- readln(n);
- sum:=0; K:=0;
- for i:=1 to n do
- begin
- write('A[',i,']=');
- readln(a[i]);
- if i mod 2=1 then
- begin
- inc(sum,a[i]);
- inc(k);
- end;
- end;
- writeln('Ср.ар. нечетных ',sum/k:7:2);
- end.
Решение задачи: «Код через процедуру и функцию»
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) с точностью до двух знаков после запятой.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д