Вычислить среднее арифметическое значение тех элементов одномерного массива, которые попадают в интервал - Turbo Pascal (33786)
Формулировка задачи:
1)Дано: Вычислить среднее арифметическое значение тех элементов одномерного массива, которые попадают в интервал от –2 до 10. Размерность массива –25. Заполнение массива осуществить случайными числами от -5 до 15.
2)
3)Проблема
Программа считает только массив целых чисел, при попытке смены внизу происходит ерор 26 тайп мисматч на строчке mas[
a]
:=random(21-5);В чем ошибка
Решение задачи: «Вычислить среднее арифметическое значение тех элементов одномерного массива, которые попадают в интервал»
textual
Листинг программы
Uses crt; Var mas:array[1..25] of real; a:integer; b,c,d:real; Begin clrscr; a:=0; b:=0; c:=0; d:=0; randomize; while a<25 do begin a:=a+1; mas[a]:=random(21-5); writeln('mas[',a,']= ',mas[a]); if (mas[a]>=-2) and (mas[a]<=10) then begin c:=c+mas[a]; d:=d+1; end; end; writeln; writeln(' = ',c); writeln('сумма элеметов от -2 до 10 = ',d); b:=c/d; writeln('среднее арифметическое элеметнов от -2 до 10 =',b); readln; end.
Объяснение кода листинга программы
- Создаётся переменная
mas
типаarray[1..25] of real
, которая представляет собой одномерный массив из 25 элементов типаreal
. - Задаются три переменные
a
,b
,c
типаreal
, которые будут использоваться для хранения суммы элементов массива, попадающих в интервал от -2 до 10. - Задаётся переменная
d
типаreal
, которая будет использоваться для хранения количества элементов массива, попадающих в интервал от -2 до 10. - Используется функция
randomize
для инициализации генератора случайных чисел. - Запускается цикл
while
, который выполняется до тех пор, пока переменнаяa
не станет равной 25. - Внутри цикла переменная
a
увеличивается на единицу. - В массив
mas
записывается случайное число в интервале от 21 до 5 (не включая границы). - Выводится строка
mas[',a,']= ',mas[a]
для каждого элемента массиваmas
. - Проверяется условие
(mas[a]>=-2) and (mas[a]<=10)
. Если это условие истинно, то суммируются значения элементов массиваmas[a]
иmas[a+1]
(если он есть), а также увеличивается значение переменнойd
на единицу. - После завершения цикла выводятся значения переменных
c
иd
. - Вычисляется среднее арифметическое значение элементов массива
mas
, попадающих в интервал от -2 до 10, и сохраняется в переменнуюb
. - Выводится строка
среднее арифметическое элеметнов от -2 до 10 =',b
. - Программа завершается с помощью функции
readln
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д