1. Заголовок темы должен быть информативным. В противном случае тема удаляется ... 2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения. 3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали! 4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора). 5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM! 6. Одна тема - один вопрос (задача) 7.Проверяйте программы перед тем, как разместить их на форуме!!! 8.Спрашивайте и отвечайте четко и по существу!!!
Help! для зачета остались две задачи кторые не могу решить. Хотя вроде простые 1) В файле содержатся сведения о студентах: Фамилия, пол , номер курса. Напечатать номер курса на котором наибольший процен мужчин, а также их фамилии. 2) Дан текстовый фаил F. удалить в каждой строке слова с наибольшей длиной. Результат занести в новый файл G. С первой возникли проблемы: не могу написать процедуру для того чтобы раскидать список по номеру курса. Помогите пожалуйста, а то срочно требуются решения . Я сам долго догоняю, а времени нет. Плизз!!! Завтра экзамен. Выручайте.
Привет всем. Помощи больше не надо. Первую программу написал, только с недочетами. например: завел массив из записей, что большой минус. Но теперь понял как делать. Если кому-то пригодиться, то вот код моей программы. Условие: Дан файл содержащий в себе сведения о студентах: фамилия, пол, курс. Определить на каком курсе наибольший процен мужчин и выдать: номер курса, процент мужчин, фамилии студентов учащихся на этом курсе мужского пола.
Код
Program max_boys; Type information=record surname:string[20]; pol:string[1]; kurs:byte; end; Var F:file of information; stud: array [1..100] of information; k:information; p,l,x,i,n,o,j,boys,kol:byte; procent:array[1..5] of real; max_percent:real; Begin Assign (F,'inform.txt'); reset (F); writeln ('Spisok studentov :'); writeln ('N ',' ','surname':10,' ','pol':1,' ','kurs':1); i:=0; o:=0; while not eof (F) do begin i:=i+1; Read (F,stud[i]); with stud[i] do writeln (i,')',' ',surname:10,' ',pol:1,' ',kurs:1); end; for j:=1 to i do begin for l:=i+1 to i-1 do begin if stud[j].kurs>stud[l].kurs then begin k:=stud[j]; stud[j]:=stud[l]; stud[l]:=k; end; end; for n:=1 to 5 do begin kol:=0;boys:=0; for j:=1 to i do if stud[j].kurs=n then begin kol:=kol+1; if stud[j].pol='m' then boys:=boys+1; end; if kol>0 then procent[n]:=(boys/kol*100); end; end; max_percent:=procent[1]; for n:=1 to 5 do begin if procent[n]>=max_percent then begin max_percent:=procent[n]; p:=n; end else end; writeln ('nomer kursa: ',p,' Procent male: ',max_percent:5:2,' Spisok mugshin:'); for j:=1 to i do if (stud[j].kurs=p) and (stud[j].pol='m') then begin o:=o+1; writeln (o,')',' ',stud[j].surname:10); end; END.