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

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

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

> Списки, приведение подобных
It's not important
сообщение 12.04.2009 15:40
Сообщение #1





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

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


Здравствуйте!
Требуется ввести многочлен из файла и привести в нем подобные при помощи списка, и вывести результирующий многочлен в конец файла, расположив его члены в порядке убывания степеней.


type Spisok = ^Elem;
Elem = record
koef,step:integer;
next:Spisok;
end;
var a,b,c: Spisok;
vk, vst: Integer;
n,i: Integer;
f: text;
procedure Vvod;
begin
while not eof(f) do
begin
read(f, vk);
read(f, vst);
end;
end;
procedure Pr;
begin
c:=nil;
while (b<>nil) and (b^.step<>vst) do b:=b^.next;
if b<>nil then b^.koef:=b^.koef+vk;
else
begin
new©;
c^.koef:=vk;
c^.step:=vst;
end;
if c<>nil then
begin
if (c^.step>a^.step) or (a=nil) then
begin
c^.next:=a;
a:=c;
end
else
begin
b:=a;
while (b^.next^.step > c^.step) and (b^.next<>nil) do b:=b^.next;
c^.next:=b^.next;
b^.next:=c;
end;
end;
end;
procedure Vivod;
begin
append(f);
writeln(f); writeln(f);
c:=a;
while b<>nil do
begin
a:=b;
if (c=nil) and (b^.koef>0) then write(f, '+');
if a^.koef <> 0 then
begin
write(f,a^.koef,'x^',a^.step);
end;
b:=b^.next;
dispose(a);
end;
close(f);
end;
BEGIN
assign(f, 'pr_1.txt'); reset(f);
a:=nil;
while not eof(f) do
begin
b:=a;
Vvod;
if (vk<>0) or (vst<>0) then Pr;

end;
b:=a;
close(f);
Vivod;
END.



Пожалуйста, помогите разобраться с выводом в файл.
Я не могу понять почему он выводит толкьо последние данные в файле...
Благодарю за внимание.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


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

 



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