Среднее арифметическое последовательности чисел - Pascal (80608)
Формулировка задачи:
Ввести последовательность целых чисел, заканчивающихся числом k. Вычислить среднее арифметическое чётных чисел. (случайное число k генерируется заранне, до ввода всех чисел)
Решение задачи: «Среднее арифметическое последовательности чисел»
textual
Листинг программы
- procedure Rec(sum: LongInt; count: LongWord; const k: ShortInt);
- var
- temp: ShortInt;
- begin
- Write('Input number (-128..127): '); ReadLn(temp);
- if (temp <> k)
- then
- begin
- if (Not Odd(temp))
- then
- begin
- Inc(sum, temp);
- Inc(count);
- end;
- Rec(sum, count, k);
- end
- else
- if (count = 0)
- then
- WriteLn('No one positive!')
- else
- WriteLn('AVG=', (sum / count):0:3);
- end;
- var
- k: ShortInt;
- begin
- Randomize;
- k := Random(256) - 128;
- WriteLn('k=', k);
- if (Odd(k))
- then
- Rec(0, 0, k)
- else
- Rec(k, 1, k);
- end.
Объяснение кода листинга программы
- Объявляется процедура
Rec
с параметрами:sum
типа LongInt (сумма чисел)count
типа LongWord (количество чисел)k
типа ShortInt (значение k)
- Объявляется переменная
temp
типа ShortInt. - Выводится сообщение
Input number (-128..127):
и пользователь вводит значение для переменнойtemp
. - Если значение
temp
не равноk
, то выполняется следующий блок кода, в противном случае выполнится другой блок. 4.1. Еслиtemp
является четным числом, то суммаsum
увеличивается наtemp
и количествоcount
увеличивается на 1. 4.2. Вызывается процедураRec
с передачей параметровsum
,count
иk
. - Если
temp
равноk
и количествоcount
равно 0, то выводится сообщениеNo one positive!
. - Если
temp
равноk
и количествоcount
не равно 0, то выводится сообщениеAVG=
и среднее арифметическое (sum / count) со значением округления до 3 знаков после запятой. - Объявляется переменная
k
типа ShortInt. - Генерируется случайное значение для
k
от -128 до 127. - Выводится сообщение
k=
и значение переменнойk
. - Если
k
является нечетным числом, то вызывается процедураRec
с передачей параметров 0, 0 иk
. В противном случае вызывается процедураRec
с передачей параметровk
, 1 иk
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д