Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.05.2008, 18:58   #1
Digital
Новичок
Джуниор
 
Регистрация: 16.05.2008
Сообщений: 2
По умолчанию Cписки.Помогить плз.Никак разобраться не могу...:(

Задали нам в универе 4 лабораторных работы,3 сделал,но четвертая со списками и я никак не могу разобраться.Обзвонил всех знакомых хорошо разбирающихся в паскале,никто не знает .Лабораторные последний срок сдачи во вторник.Прошу помоч решить мне задачу,очень нужно
Задача такая:Даны 2 линейных списка.Написать программу которая создает третий список из элементов двух данных.
Помогите пожайлусто если сможите.
Digital вне форума Ответить с цитированием
Старый 16.05.2008, 21:04   #2
Tayfun
Форумчанин
 
Аватар для Tayfun
 
Регистрация: 24.06.2007
Сообщений: 351
По умолчанию

Цитата:
Помогите пожайлусто если сможите.
Сможем...!

Код:
Program spisok;
Uses crt;
type
TPtr=^TElem;
TElem=record
inf:Real;
link:TPtr
end;
var
v:real;
i,n:integer;
BegSO,EndSO,BegS2,EndS2,BegS1,EndS1:TPtr;
{Dobovlyaem elementi spiskov}
procedure Add1(t:Real);
var
p:TPtr;
begin
new(p);
p^.inf:=t;
p^.link:=nil;
if EndS1=nil then BegS1:=p else EndS1^.link:=p;
EndS1:=p;
end;

procedure Add2(t:Real);
var
p:TPtr;
begin
new(p);
p^.inf:=t;
p^.link:=nil;
if EndS2=nil then BegS2:=p else EndS2^.link:=p;
EndS2:=p;
end;

procedure AddO(t:Real);
var
p:TPtr;
begin
new(p);
p^.inf:=t;
p^.link:=nil;
if EndSO=nil then BegSO:=p else EndSO^.link:=p;
EndSO:=p;
end;
{Vivodim spisok na ekran}
procedure show1;
var
p:TPtr;
begin
p:=BegS1;
while p<>nil do begin
write(p^.inf:1:2,' ');
AddO(p^.inf); {Dobavlyaem v tretiy spisok}
p:=p^.link;
end;
end;

procedure show2;
var
p:TPtr;
begin
p:=BegS2;
while p<>nil do begin
write(p^.inf:1:2,' ');
AddO(p^.inf);{Dobavlyaem v tretiy spisok}
p:=p^.link;
end;
end;

procedure showO;
var
p:TPtr;
begin
p:=BegSO;
while p<>nil do begin
write(p^.inf:1:2,' ');
p:=p^.link;
end;
end;

begin
clrscr;
writeln('Vvedite kolichestvo elementov pervogo spiska');
readln(n);
for i:=1 to n do begin
writeln('Vvedite ',i,' element');
readln(v);
Add1(v);
end;
writeln('Vvedite kolichestvo elementov vtorogo spiska');
readln(n);
for i:=1 to n do begin
writeln('Vvedite ',i,' element');
readln(v);
Add2(v);
end;
writeln;
write('Spisok 1:');
Show1;
writeln;
Write('Spisok 2:');
Show2;
writeln;
Write('Spisok 3:');
ShowO;
readkey;
end.
Я не маюсь бездельем, я от него тащусь!
Tayfun вне форума Ответить с цитированием
Старый 17.05.2008, 10:48   #3
Digital
Новичок
Джуниор
 
Регистрация: 16.05.2008
Сообщений: 2
По умолчанию

Огромнейшее спасибо!!!

Последний раз редактировалось Digital; 17.05.2008 в 10:51.
Digital вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не могу разобраться Var17 Общие вопросы Delphi 6 27.03.2010 01:21
Никак не могу написать код для..... PayBack Общие вопросы C/C++ 2 07.07.2008 13:55
Никак не могу составить формулу... просьба помочь... c_zurab Microsoft Office Excel 7 14.03.2008 23:34
Нужна помощь с задачей...никак не могу разобраться( Gekata Паскаль, Turbo Pascal, PascalABC.NET 4 13.12.2006 14:02