Необходимо выяснить сколько студентов группы имеют средний балл, наименее всего отклоняющийся по абсолютному значению от среднего балла всей группы. |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Необходимо выяснить сколько студентов группы имеют средний балл, наименее всего отклоняющийся по абсолютному значению от среднего балла всей группы. |
natik3 |
Сообщение
#1
|
Новичок Группа: Пользователи Сообщений: 34 Пол: Женский Репутация: 0 |
известно,что в следующем фрагменте программы массив матрица содержит оценки студентов группы,фамилии которых перечислен в типе фамилия.
> type > фамилия=(Иванов,Просветкин,Ленин,Михайлов,М аслова,Юрьева,Беляев,Малащенко,Нагайц ев,Семыкин). > предмет=(матанализ,алгебра,информатика,ист рия,матлогика,механика,педагогика,диф уруравнения,статистика). > var > матрица: array[ фамилия,предметы ] of integer. Необходимо выяснить сколько студентов группы имеют средний балл, наименее всего отклоняющийся по абсолютному значению от среднего балла всей группы. помогите решить через процедуры и функции.вот,что у меня есть,проверьте.исправьте.а то она работает некорректно.помогите решить через процедуры и функции.вот,что у меня есть,проверьте.исправьте.а то она работает некорректно. type fam=(Ivanov, Prosvetkin, Lenin, Mikhaylov, Maslov, Yuryev, Belyaev, Malashenko, Nagaytsev, Semykin); pred=(matan, algebra, informatics, history, matlogica, mechanics, pedagogics, difururavneniye, statistics); matr=array[fam ,pred] of integer; var a:matr; Procedure vvodM(var a:matr); var j: pred; i:fam; begin randomize; for i:= Ivanov to Semykin do begin For j:=matan to statistics do begin a[i,j]:=random(4)+2; write( a[i,j]:3); end; writeln end; end; function sred(Student: fam): real; var j: pred; i:fam; s: real; begin s:= 0; for i:= Ivanov to Semykin do begin For j:=matan to statistics do begin s:= s + a[Student,j]; sred:= s/9 end; write(sred(i)) end; readln end; function TotalAverege(var a:matr):real; var j: pred; i:fam; s: real; begin s:= 0; for i:=Ivanov to Semykin do begin For j:=matan to statistics do begin s:= s +sred(i); TotalAverege:= s/9; end; write(TotalAverege(a)) ; end; readln end; Procedure MinDev (a:matr); var j: pred; i:fam; k:integer; begin k:=0; for i:=Ivanov to Semykin do begin For j:=matan to statistics do begin if TotalAverege(a)<>abs(TotalAverege(a)-sred(i))then k:=k+1; If k>0 then WriteLn(k,' студентов имеют минимальное отклонение от cреднего балла группы') else WriteLn(k,'Таких студентов нет'); end; end; end; begin setconsolecp(1251); setconsoleoutputcp(1251); vvodM(a); MinDev(a); readln end. Нужно еще сделать так.чтобы выводились все промежуточные действия.т е средний балл каждого ученика,общий средний балл.а только потом уже выводился ответ.помогите! |
Krjuger |
Сообщение
#2
|
Профи Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: 20 |
И зачем было создавать новую тему по одной и той же задаче. И да,ваша программа работает неверно.
Надеюсь больше портить программы переименовыванием, и игнорировать конструктивные предложения,заменяя их сомнительными решениями, вы не будете,уважайте труд других. |
Текстовая версия | 2.05.2024 17:20 |