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

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

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

 
 Ответить  Открыть новую тему 
> Помогите решить задачу на Паскале, однонаправленный список
24dima
сообщение 22.10.2010 13:12
Сообщение #1





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

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


Мне дали на лабораторной работе задачи по Паскалю, но я его не так хорошо знаю Паскаль чтобы решить эту задачу. Помогите мне пожалуйста сделать эту задачу:
Сформировать однонаправленный список из звеном-заголовком.
Вывести его на печать.
Проверить, входит ли в этот список буква буква "К", если не входит, то дописать ее в конец списка.


Сообщение отредактировано: 24dima - 22.10.2010 13:18
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
мисс_граффити
сообщение 22.10.2010 13:30
Сообщение #2


просто человек
******

Группа: Модераторы
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

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


поиск по форуму + FAQ

если мы сейчас напишем, то ты так никогда паскаль и не узнаешь.


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
24dima
сообщение 27.10.2010 0:49
Сообщение #3





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

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


Добрый вечер! Программу я написал, только что одна проблема букву "К" вставляет не в конце а в начале. Помогите решить проблему.

program laba4;
type
zv=^pointer;
pointer=record
elem:char;
next:zv
end;

var
find:boolean;
vlan, vslov:zv;
sym:char;

procedure vstav (lanka:zv; buk:char);
var
q:zv;
begin
if (lanka<>nil) then
new(q);
q^.elem:=buk;
q^.next:=lanka^.next;
lanka^.next:=q;
end;

begin
find:=false;
new (vslov);
vslov^.next:=nil;
vlan:=vslov;
writeln ('Введить символ до крапки');
repeat
read (sym);
vstav(vlan,sym);
vlan:=vlan^.next;
until sym='.';
writeln ('Сформований рядок');
vlan:=vslov;
vlan:=vlan^.next;
while vlan^.next<>nil do
begin
write (vlan^.elem);
vlan:=vlan^.next;
end;

vlan:=vslov;
while vlan^.next=nil do
begin
if vlan^.elem='K' then
begin
find:=true;
break;
end;
vlan:=vlan^.next;
end;

if find=true then writeln('Element e')
else
begin
vstav(vlan,'K');
writeln('Element vstavleno');
vlan:=vslov;
vlan:=vlan^.next;
repeat
write(vlan^.elem);
vlan:=vlan^.next
until vlan=nil;
writeln;
end;
end.



Прикрепленные файлы
Прикрепленный файл  frd.pas ( 1.31 килобайт ) Кол-во скачиваний: 175
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
мисс_граффити
сообщение 27.10.2010 7:53
Сообщение #4


просто человек
******

Группа: Модераторы
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

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


почему
while vlan^.next=nil  do

не равно должно быть...
тогда будет вставляться не в начало, а перед последним символом.
почему?
потому что процедура вставки у тебя реализована так, что элемент добавляется перед тем элементом, на который ты передаешь указатель.
так что придется для вставки К не ее использовать, а отдельно расписывать.

if find=true then

можно писать
if find then


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
24dima
сообщение 27.10.2010 9:35
Сообщение #5





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

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


Благодарю вас за помощь!

Сообщение отредактировано: 24dima - 27.10.2010 9:35
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Lapp
сообщение 27.10.2010 9:56
Сообщение #6


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

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

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


Цитата(24dima @ 27.10.2010 10:35) *
Благодарю вас за помощь!

Добавляю +1 в репутацию мисс_граффити от 24dima


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


Я.
****

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

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


oфф.

24dima, ЗАЧЕМ ПИСАТЬ ТАКИМ ИТЕРЕСНЫМ ШРИФТОМ???

Сообщение отредактировано: sheka - 27.10.2010 15:40
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



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