![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
MagZzz |
![]() ![]()
Сообщение
#1
|
Гость ![]() |
Привет всем! Помогите с задачкой!! :p2:
Предлагается, что уже построен и задан указателем Р связанный односторонний список, элементами которого являются символы. а) Подсчитать число элементов списка. б) Проверить упорядочен ли список по возрастанию. |
![]() ![]() |
MagZzz |
![]()
Сообщение
#2
|
Гость ![]() |
Вот я тут по левому наштряпал программку, но она список сортирует!
![]() ![]() Исходный код program sortir; uses crt; type p_stud=^student; student=record name:string[20]; next:p_stud; end; const sum: longint = 0; var head:p_stud; cur:p_stud; p:p_stud; name:string[20]; node: p_stud; tekst:text; begin clrscr; Writeln(' -- Ishodnyi spisok --'); writeln; assign(tekst,'D:\income.txt'); reset(tekst); while not EOF(tekst) do begin Readln(tekst,name); Writeln('', name,' '); end; close(tekst); assign(tekst,'D:\income.txt'); reset(tekst); Readln(tekst,name); reset(tekst); while not EOF(tekst) do begin Readln(tekst,name); inc(Sum, Length(name)) end; close(tekst); Writeln; Writeln('— Kollichestvo elementov - ', Sum ,' '); Writeln; assign(tekst,'D:\income.txt'); reset(tekst); repeat readln(tekst,name); if length (name)<>0 then begin new(node); node^.name:=name; node^.next:=NIL; cur:=head; p:=NIL; while(name>cur^.name) and (cur<>NIL) do begin p:=cur; cur:=cur^.next; end; if p = NIL then begin node^.next:=head; head:=node; end else begin node^.next:=p^.next; p^.next:=node; end; end; until length(name)=0; cur:=head; writeln(' -- - --'); while cur<>NIL do begin writeln(cur^.name); cur:=cur^.next; end; writeln('----------------------------'); readln; close(tekst); end. Код должен быть в тегах |
![]() ![]() |
![]() |
Текстовая версия | 9.09.2025 12:51 |