Другие языки программирования и технологии

Pascal. Помогите пожалуйста решить задачу в паскале !

При выполнении задачи в паскале я столкнулся с трудностью. В общем, задача состоит в следующим : Составьте программу которая вписывает 10 оценок в массив и считает среднюю оценку из оценок больше или равных 5. При выполнении задачи в паскале я столкнулся с трудностью. В общем, задача состоит в следующим : Составьте программу которая вписывает 10 оценок в массив и считает среднюю оценку из оценок больше или равных 5. Вот моё начало : Program Ex_3; var T : array[1..10] of real; c : integer; Med:real; begin writeln('Введите 10 оценок : '); for c:=1 to 10 do readln(T[c]); {Тут вводятся все оценки в массив} if T[c]>=5 then Med:=T[c]; Med := T[c] end.
Arslan Gylyjow
Arslan Gylyjow
990
Нужны еще две переменные:
Sum: real;
k: integer;

Тоггда вычисление среднего выглядит так:

k:=0;
Sum:=0;
for c:=1 to 10 do
if T[c]>=5 then
begin
Sum:=Sum+T[c];
Inc(k);
end;
if k>0 then Med:=Sum/k
else Med:=3;
Сергей Ломакин
Сергей Ломакин
5 824
Лучший ответ
Arslan Gylyjow Спасибо ! Всё работает !
ну смотри допустим оценки 2 3 4 5 6 2 5 7 8 9 0
вопрос "найти среднюю из тех, которые равны или больше 5"
того имеем: 5 6 5 7 8 9 (заносим их во второстепенный массив, складываем и делим на кол-во)
чтобы найти среднюю надо сложить эти числа и поделить на их кол-во, но можно сразу в цикле и исп. счетчик чтобы узнать их кол-во, думаю смысл тебе должен быть ясен, на паскале это легко делается!
Илья Ильясов
Илья Ильясов
20 920
Тебе надо сделать счетчик, который читает сумму и количество всех чисел которые равны или больше пяти:
Med:=Med+T[c]; \\ счетчик для суммы
k:=k:+1 \\ счетчик для количества

B еще если у тебя массив T[c] типа integer, то и Med тоже можешь сделать integer. ну это не критично. я тут сделаю его real, так как потом на вывод тоже отправим переменную med.

Program Ex_3;
var T : array[1..10] of real;
c : integer;
Med:real;
begin
k:=0;
writeln('Введите 10 оценок : ');
for c:=1 to 10 do
readln(T[c]); {Тут вводятся все оценки в массив}
if T[c]>=5 then
begin
Med := Med + T[c];
k := k + 1;
end;

Med := Med / k; {находим среднее}

// тут вывод на экран сам напиши через readln. еще в конце добавь "readln;" что бы икран не исчезал.

end.
средняя оценка вычисляется делением суммы элементов на их количество. т. е. нужна еще одна переменная которая будет считать количество элементов T[c]>=5