Помогите плз с задачейЮ оч нужно =)
Вася Иванов получил за год 250 оценок по алгебре. Определите сколько среди них пятёрок, четверок и троек. НАйти среднюю оценку за год по алгебре.
Заранее пасибо)
Данные оценок хранятся в массиве?Пользователь руками оценки вводит?
я хз я вообщеначинающий в паскале, нам в таком виде задачу продиктовали)
Что не получается?
Опиши массив
var, при вводе очередной оценки (назовем ее X) просто напросто увеличивать arr[X] на единицу... Тогда в конце процесса у тебя в arr[i] будет храниться число оценок равных i...
grades: array[1 .. 5] of integer;
Тогда описывай как константу:
const
a: array [1..250] of Integer = ({Тут твои данные об оценках...});
Я школьник =) мы пока константы непроходили только начали массивы
Ну а где тогда, раз не вводится руками, они хранятся?Ты не ответил на этот вопрос!
Тогда заполняй и вычисляй среднее..
program Project1;
var
arr: array [1..250] of Integer;
var
i,d,a,o: Integer;
e: real;
begin
writeln('Vvedite ocenki: ');
for i:=1 to 250 do
begin
readln(o);
arr[i]:=o;
end;
d:=0;
a:=0;
for a:=1 to 250 do begin
d:=d+(arr[a]);
end;
e:=d/250;
writeln(e:1:2);
readln
end.
Большое спасибо . Всё получилось =)
Артемий2 Ты задание внимательно прочитал ?
SOKOLx, успел мой пост посмотреть ? Или сам сделал ?
Сам сделал через рандомайз )
а что если после формирования массива посчитать сначала среднее значение, потом в цикле преобразовать все элементы массива из целочисленного типа в строковый, а потом пройтись по массиву 3 раза условными операторами в поиске значений "3", "4" и "5", увеличивая значение соответствующей переменной на 1 каждый раз при обнаружении нужного значения?
или я сильно перемудрил с планом написания этой программы?
а что нам даст преобразование в строку?
ради чего оно нужно?
что значит "пройтись по массиву 3 раза условными операторами"? проходятся циклами как-то традиционно... только зачем СТОЛЬКО циклов, если все можно сделать в одном - заполнение, подсчет суммы оценок (для среднего арифметического) и подсчет кол-ва каждого вида оценок.
мисс_граффити
если я не ошибаюсь, то работа со строковыми переменными занимает меньше времени, чем с целочисленными.
а "пройтись по массиву 3 раза условными операторами" имелось ввиду, что в 1 цикл запихать 3 условных оператора.
volvo
хмм... да, а это время я не учёл...
спасибо за замечание! исправлюсь!