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

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

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

> Многосвязные списки, Помощь
сообщение
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 32
Пол: Мужской
Реальное имя: Дима

Репутация: -  0  +


Всем привет.Требуется помощь в написании программы с использованием многосвязных список. Тему плохо понял, поэтому требуется помощь.
Задание: Найти короткую строку.
Сам код программы есть, требуется лишь поспотроить МС -)
 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.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Krjuger, я понимаю, что
Цитата
Не ругайте сильно,я только учусь.
- но почему ты заставляешь других учиться на твоих ошибках? Еще раз: проверяй свои творения перед публикацией! И учи матчасть.. smile.gif

D1ma, мне как-то странно, что у тебя данные имеют тип char, а не string (как в начале). Можешь пояснить? Ты понимаешь, что LENGTH(A^.VAL) всегда будет давать 1 в этом случае?

Ты не паникуй, сделаем. Только ты говори яснее, что ты хочешь получить и как.



--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 32
Пол: Мужской
Реальное имя: Дима

Репутация: -  0  +


Цитата(Lapp @ 1.06.2009 9:10) *

Krjuger, я понимаю, что - но почему ты заставляешь других учиться на твоих ошибках? Еще раз: проверяй свои творения перед публикацией! И учи матчасть.. smile.gif

D1ma, мне как-то странно, что у тебя данные имеют тип char, а не string (как в начале). Можешь пояснить? Ты понимаешь, что LENGTH(A^.VAL) всегда будет давать 1 в этом случае?

Ты не паникуй, сделаем. Только ты говори яснее, что ты хочешь получить и как.

Первый вариант рабочий, но как оказалось нельзя использовать STRING, а только CHAR.( до сих пор не пойму почему)
Далее string поменял на char,чуток подправил,посимвольный ввод работает.
Но вот как изменить процедуру min, я так и не додумался...

p.s. Вариант, предложенный Krjuger не работает.
read(A^.Val,cch); это допустимо только же для файлов? а тут список.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(D1ma @ 1.06.2009 15:19) *
read(A^.Val,cch); это допустимо только же для файлов? а тут список.
Да, конечно.
То есть, ты имеешь в виду, что в каждом элементе списка только один символ?
Будь добр, подтверди (а лучше опровергни)), ибо мне все равно не верится в такое диво.
Может, переспросишь препа? или кого-нить еще..

В принципе, ничего особо трудного, ибо концы строк ты тоже заносишь в список.. но странно)).


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме
D1ma   Многосвязные списки   14.04.2009 0:15
volvo   Что в твоем понимании МС? Двухсвязный список? Муль…   14.04.2009 0:18
D1ma   Что в твоем понимании МС? Двухсвязный список? Мул…   14.04.2009 0:45
volvo   Что ты хочешь делать с мультисписком? Читать в нег…   14.04.2009 0:50
D1ma   Вот что получилось :) : USES CRT; CONST PATH=…   16.04.2009 18:29
D1ma   Помогите исправить процедуру MIN. Список сформиров…   27.05.2009 20:49
Krjuger   PROCEDURE MIN(A:LINK;VAR B:WORD); VAR I:WORD; ch:…   27.05.2009 21:28
D1ma   PROCEDURE MIN(A:LINK;VAR B:WORD); VAR I:WORD; ch…   27.05.2009 23:35
Krjuger   Ну у меня то eoln не для списка,а только для A^.Va…   28.05.2009 0:04
D1ma   Немного не понял, а почему именно 'enter'?   28.05.2009 23:17
Krjuger   Ну а что ты нажимаеш,когда хочеш перейти на новую …   29.05.2009 0:35
D1ma   эх, что-то не работает... пробывал по всякому, но …   31.05.2009 20:03
Krjuger   За вознаграждение,это уже немного в другую тему.   31.05.2009 20:06
Lapp   Krjuger, я понимаю, что - но почему ты заставляеш…   1.06.2009 12:10
D1ma   Krjuger, я понимаю, что - но почему ты заставляе…   1.06.2009 18:19
Lapp   read(A^.Val,cch); это допустимо только же для файл…   1.06.2009 18:30
D1ma   Да, конечно. То есть, ты имеешь в виду, что в к…   1.06.2009 20:04
Lapp   Ну получается что только один символ, т.к. char, п…   1.06.2009 22:29
D1ma   Сдается мне, что ты и не пытался уточнить.. Ладн…   1.06.2009 23:15
Lapp   последняя строка символов не проверяется на длину,…   2.06.2009 0:13
Lapp   Нет, погоди, так снова неправильно. Дай минутку. …   2.06.2009 0:27
Krjuger   Действительно,зачем ты тип данных в списке сменил?…   1.06.2009 17:18
Krjuger   В общем я сделал для типа строка,но сразу говорю с…   1.06.2009 21:13
Krjuger   вот тебе немног другая реализация,но как я и говри…   2.06.2009 0:11
Krjuger   УУУУууу.....молись,в прошлый раз volvo конкурс ус…   2.06.2009 0:16
D1ma   в общем, оказалось что это вовсе не многосвязный …   4.06.2009 22:53
D1ma   Блин... В чем ошибка?   6.06.2009 11:17
D1ma   Решил сначала попробывать с использованием типа ST…   6.06.2009 22:35
D1ma   Решил попробывать вот так: while s<>nil do …   7.06.2009 0:08
Lapp   Я довольно много поменял тут.. Разберешься? type…   7.06.2009 0:21
D1ma   Спасибо!!! :) Плохо разобрался токо, …   8.06.2009 20:01
Lapp   немогли бы написать действие след. операторов?Ты л…   8.06.2009 23:35
D1ma   Исправьте что не так :) while not eof(t) d…   9.06.2009 20:09
Krjuger   Ну а ты скажи,что не так и тебе исправят..Где ошиб…   10.06.2009 17:54


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

 





- Текстовая версия 29.03.2024 22:48
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name