![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
lopata |
![]()
Сообщение
#1
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 99 Пол: Женский Реальное имя: vera Репутация: ![]() ![]() ![]() |
Только не позорьте. ;)
Вообще как бы программа преобразовывает строки в списки . То есть "Дом" становиться списком "Д" "О" "М". Вот у меня функция для преобразования строки в список:
Нужно написать функцию FUNCTION CLConcat(cl1, cl2: CharListPtr): CharListPtr; (*returns concatenation of cl1 and cl2 by copying both lists*) вот у меня получилось, но пока только для копирования одного списка:
Подскажите что не правильно? не могу проверить правильно или нет, так как не понимаю как мне вызывать эту функцию. Очень нуждаюсь в помощи. |
![]() ![]() |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
Цитата вот у меня получилось, но пока только для копирования одного списка: А где у тебя в задании что-то сказано о копировании списков? У тебя стоит задача: есть 2 списка, и надо один приклеить к другому. Так? Это делается в три строки ровно:function CLConcat(List1, List2: CharListPtr): CharListPtr;Это НЕ сработает только в одном случае, если List1 будет пустым, это надо проверить отдельно, сделай это самостоятельно... |
lopata |
![]()
Сообщение
#3
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 99 Пол: Женский Реальное имя: vera Репутация: ![]() ![]() ![]() |
все. поняла. спасибо. можешь пожалуйста посмотреть процедуру:
PROCEDURE DisposeCharList(VAR cl: CharListPtr); |
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
Ну, посмотрел... И что? Я бы сделал по-другому:
current := cl; |
lopata |
![]()
Сообщение
#5
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 99 Пол: Женский Реальное имя: vera Репутация: ![]() ![]() ![]() |
у меня возник вопрос : почему в самом начале функции ей присвается указатель?
|
volvo |
![]()
Сообщение
#6
|
Гость ![]() |
Это не ей... Это результат, который она вернет. А вернуть она должна начало первого списка...
|
lopata |
![]()
Сообщение
#7
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 99 Пол: Женский Реальное имя: vera Репутация: ![]() ![]() ![]() |
Блин.. А если я захочу скажем удалить из первого списка первый элемент?
получается что в склеином списке его тоже не будет... |
volvo |
![]()
Сообщение
#8
|
Гость ![]() |
Тогда тебе нужно именно копирование списка... Тем более, что
Цитата Нужно написать функцию Вот так:FUNCTION CLConcat(cl1, cl2: CharListPtr): CharListPtr; (*returns concatenation of cl1 and cl2 by copying both lists*) program CharList;Попробуй разобраться, как это работает, и для чего введены доп. подпрограммы. Если что непонятно - спрашивай... Упустишь сейчас - потом будет труднее разобраться в работе с указателями... |
lopata |
![]()
Сообщение
#9
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 99 Пол: Женский Реальное имя: vera Репутация: ![]() ![]() ![]() |
У меня само задание это побороть ограниче типа стринг, переделывай его в списки, и использовать данные процедуры и функции :
FUNCTION NewCharList: CharListPtr; (*returns empty char list*) PROCEDURE DisposeCharList(VAR cl: CharListPtr); (*disposes all nodes and sets cl to empty char list*) FUNCTION CLLength(cl: CharListPtr): INTEGER; (*returns number of characters in cl*) FUNCTION CLConcat(cl1, cl2: CharListPtr): CharListPtr; (*returns concatenation of cl1 and cl2 by copying both lists*) FUNCTION CharListOf(s: STRING): CharListPtr;(*returns char list representation of STRING*) FUNCTION StringOf(cl: CharListPtr): STRING; (*returns STRING representation of char list, may result in truncatation*) Вот что сделала : Program CharList; Сообщение отредактировано: lopata - 17.12.2009 3:01 |
volvo |
![]()
Сообщение
#10
|
Гость ![]() |
Ты об этом говоришь ТЕПЕРЬ? Ну, извини, меня задания "по частям" не очень интересуют... Вернее, не интересуют вообще. Дальше - без меня...
|
lopata |
![]()
Сообщение
#11
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 99 Пол: Женский Реальное имя: vera Репутация: ![]() ![]() ![]() |
Ну Извини. Меня интересовало как склеить списки.
|
lopata |
![]()
Сообщение
#12
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 99 Пол: Женский Реальное имя: vera Репутация: ![]() ![]() ![]() |
Вот такая вот у меня получилась функция для склеивания списков..:
|
lopata |
![]() ![]()
Сообщение
#13
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 99 Пол: Женский Реальное имя: vera Репутация: ![]() ![]() ![]() |
![]() Сообщение отредактировано: lopata - 18.12.2009 11:05 |
Lapp |
![]()
Сообщение
#14
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
![]() -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
lopata |
![]()
Сообщение
#15
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 99 Пол: Женский Реальное имя: vera Репутация: ![]() ![]() ![]() |
cto znachit oastal'nye ne prichem? spasibo konechno volvo, potomu chto srazu ponyat' kak rabotayut Pointers i Listenochen' tyazhelo.
No on predpochel udalit'sya. i vryatli emu teper' nuzhno moe spasibo. |
Lapp |
![]()
Сообщение
#16
|
|||
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
No on predpochel udalit'sya. i vryatli emu teper' nuzhno moe spasibo. А, вот оно как. Проявил нелояльность - и вышел из господской милости. Типа сам виноват. Ну-ну.![]()
-------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
|||
lopata |
![]()
Сообщение
#17
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 99 Пол: Женский Реальное имя: vera Репутация: ![]() ![]() ![]() |
ya ne o tom. mne nikto nichego ne obyazan. i pomogat' tozhe. No eto sdorovo kogda dejstvitelno pomogayut. Prosto tak. Сообщение отредактировано: lopata - 18.12.2009 12:57 |
Lapp |
![]()
Сообщение
#18
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
on yasno dal ponyat' " otvali" i poetomu dumayu emu moe spasibo ne nuzhno. "спасибо" говорят разве потому, что оно интересует? Ты рассматриваешь свое спасибо, как нечто нужное тому человеку, который тебе помог?.. Я думал, что спасибо говорят, потому что есть внутреннее желание и даже необходимость поблагодарить человека за помощь.. Что сказать спасибо - это потребность того, кто получил помощь. Я не прав? И потом, я не усмотрел в словах волво отказа от твоей благодарности.. я плохо смотрел?-------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Гость |
![]()
Сообщение
#19
|
Гость ![]() |
я ему уже сказала спасибо.
а с тобой строить диалог бесполезно. Так как ты сразу же негативно настроен. И сам у себя в голове сделал какой-то вывод. всего хорошего. |
Гость |
![]()
Сообщение
#20
|
Гость ![]() |
P.S. "Сережа молодец"
|
![]() ![]() |
![]() |
Текстовая версия | 19.06.2025 15:07 |