Форум «Всё о Паскале» _ Задачи _ Помогите пожалуйста, очень срочно!
Автор: goosberry 15.07.2008 20:57
Дан массив из 10 целых элементов. Найти среднее арифметическое отрицательных элементов. Вот что у меня получилось
program zadacha; uses crt; var: x:array [1..10] of integer; i,S,K:integer; Sr:real; begin clrscr; write ('Введите массив'); for i:=1 to 10 do readln (x[i]); for i:=1 to 10 do if x[i]<0 then begin K:=K+1; S:=S+x[i];end; sr:=s/k; write (Sr); readkey; end.
Только ответ какой-то не верный получается. В чём причина? И ещё не подскажите как записать эту задачу в виде блок-схемы?
Автор: klem4 15.07.2008 21:02
Обнули сумму и счетчик перед циклом, не все компиляторы обнуляют переменные самостоятельно, ну и перед расчетом sr не забудь проверить не равно ли k нулю, иначе программа будет вылетать при отсутствии отрицательных элементов. Вроде все.
Автор: goosberry 15.07.2008 21:07
Цитата(klem4 @ 15.07.2008 18:02)
Обнули сумму и счетчик перед циклом, не все компиляторы обнуляют переменные самостоятельно, ну и перед расчетом sr не забудь проверить не равно ли k нулю, иначе программа будет вылетать при отсутствии отрицательных элементов. Вроде все.
Да я уже пробовала, что-то не очень помогает... В большинстве случаев результат программы получается меньше, чем по моим рассчётам без компьютера.
Автор: volvo 15.07.2008 21:13
Цитата
В большинстве случаев результат программы получается меньше, чем по моим рассчётам без компьютера.
Приводи данные, с которыми проверяется программа, и свои расчеты, что ты ХОЧЕШЬ видеть на выходе, посмотрим, где неправильно. Иначе это - "переливание из пустого в порожнее"...
Автор: goosberry 15.07.2008 21:14
О, кажись заработало.... klem4, volvo спасибо за участие. volvo просто у меня уже голова квадратная... завтра экзамен А никто не знает как эту задачу в виде Блок-схемы записать???