1. Заголовок темы должен быть информативным. В противном случае тема удаляется ... 2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения. 3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали! 4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора). 5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM! 6. Одна тема - один вопрос (задача) 7.Проверяйте программы перед тем, как разместить их на форуме!!! 8.Спрашивайте и отвечайте четко и по существу!!!
Помогите написать програмку плиз(, Отсортировать список... Напечатать страны
procedure MakeList(var Head: ListEl); var NewEl: ListEl; cont: char; begin repeat NewEl:=new(ListEl); writeln('name?'); readln(NewEl^.name); writeln('capital?'); readln(NewEl^.cap); writeln('people?'); readln(NewEl^.peop); writeln('square?'); readln(NewEl^.Sq); NewEl^.Next:=Head; Head:=NewEl; writeln('No more countries? y/n'); readln(cont); until cont='y'; end;
procedure View(const Head: ListEl); var Curr: ListEl; begin Curr:=Head; while Curr<>nil do with Curr^ do begin write(name:10,cap:10,peop:10,sq:10:2); writeln; Curr:=Next; end; end;
procedure Sort(var Head: ListEl); var Curr1,Curr2,Chan: ListEl; begin Curr1:=Head; while Curr1^.Next<>nil do begin Curr2:=Head; if (Curr2^.peop/Curr2^.sq)>(Curr2^.Next^.peop/Curr2^.Next^.sq) then begin Head:=Head^.Next; Curr2^.Next:=Head^.Next; Head^.Next:=Curr2; end; while Curr2^.Next^.Next<>nil do begin Chan:=Curr2; if (Curr2^.Next^.peop/Curr2^.Next^.sq)>(Curr2^.Next^.Next^.peop/Curr2^.Next^.Next^.sq) then begin Chan:=Chan^.Next; Curr2^.Next:=Chan^.Next; Chan^.Next:=Chan^.Next^.Next; Curr2^.Next^.Next:=Chan; end; Curr2:=Curr2^.Next; end; Curr1:=Curr1^.Next; end; end;
procedure Select(const Head: ListEl); var sel: char; Curr: ListEl; begin writeln('letter?'); readln(sel); Curr:=Head; while Curr<>nil do begin if Curr^.cap[1]=sel then writeln(Curr^.name); Curr:=Curr^.Next; end; end;
сортировка КРАЙНЕ неоптимальная. оформления - НИКАКОГО (ни менюшки, ни шапки таблицы). развлекайся...
--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует. На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
Ну так разобраться надо было, прежде чем пытаться втюхать лабу преподу.
--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует. На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!