IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Упорядочен ли список?!
MagZzz
сообщение 27.03.2005 11:05
Сообщение #1


Гость






Привет всем! Помогите с задачкой!! :p2:

Предлагается, что уже построен и задан указателем Р связанный односторонний список, элементами которого являются символы.
а) Подсчитать число элементов списка.
б) Проверить упорядочен ли список по возрастанию.
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
MagZzz
сообщение 3.04.2005 16:06
Сообщение #2


Гость






Вот я тут по левому наштряпал программку, но она список сортирует! blink.gif Чё надо переделать чтоб она выдавала только ответ отсортирован список или нет!! Спасибо за внимание!! unsure.gif
Исходный код
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.


Код должен быть в тегах
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 22:30
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"