![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
D1ma |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 32 Пол: Мужской Реальное имя: Дима Репутация: ![]() ![]() ![]() |
Всем привет.Требуется помощь в написании программы с использованием многосвязных список. Тему плохо понял, поэтому требуется помощь.
Задание: Найти короткую строку. Сам код программы есть, требуется лишь поспотроить МС -) VAR
F:TEXT;
I:WORD;
C:CHAR;
N:WORD;
BEGIN
CLRSCR;
ASSIGN(F,'C:\F1.TXT');
RESET(F);
I:=0;
N:=60000;
WHILE NOT EOF(F) DO
BEGIN
IF EOLN(F) THEN
BEGIN
IF I<N THEN N:=I;
I:=0;
READ(F,C);
READ(F,C);
END;
READ(F,C);
I:=I+1;
END;
IF I<N THEN N:=I;
IF N=60000 THEN I:=0 ELSE I:=N;
WRITE('MIN = ');
WRITELN(I);
END.
|
![]() ![]() |
D1ma |
![]()
Сообщение
#2
|
Новичок ![]() Группа: Пользователи Сообщений: 32 Пол: Мужской Реальное имя: Дима Репутация: ![]() ![]() ![]() |
в общем, оказалось что это вовсе не многосвязный список...
![]() Как же надоела эта задача... ![]() Код uses crt; type slov=^slovo; slovo=record sim:char; ss:slov; end; spisok=^zveno; zveno=record sl:slov; cc:spisok; end; var s,s1,s2:spisok; t:text; b,i:word; begin clrscr; assign(t,'C:/f1.txt'); reset(t); s1:=nil; while not eof(t) do begin new(s); s2^.sl:=nil; while not eoln(t) do begin new(s^.sl); read(t,s^.sl^.sim); s^.sl^.ss:=s2^.sl; s2^.sl:=s^.sl; end; readln(t); s^.cc:=s1; s1:=s; end; close(t); while s<>nil do begin while s^.sl<>nil do begin write(s^.sl^.sim); s^.sl:=s^.sl^.ss; end; writeln; s:=s^.cc; end; b:=256; i:=0; While S<>nil do begin Case S^.sl^.sim of #13:; #10: begin if i<b then b:=i; i:=0 end else Inc(i) end; s:=s^.cc; end; if (0<i)and(i<b) then b:=i else if b=256 then b:=0; write('MIN=',b); end. Вроде как формирует из файла многосвязный список, только строки наоборот )) По аналогии вычисление длины короткой строки написал вроде как в предыдущей программе, только что-то не работает... Помогите плз, осталась единственная несданная задача... |
![]() ![]() |
![]() |
Текстовая версия | 8.08.2025 7:03 |