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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.01.2011, 19:31   #1
Klik_1602
Пользователь
 
Аватар для Klik_1602
 
Регистрация: 06.09.2010
Сообщений: 51
По умолчанию Как исправть код, чтобы работал?

Код:
program L14_23;
{Дан неупорядоченный линейный односвязный список и массив, содержащий номера 
соответствующих элементов в упорядоченном списке. Перестройте данный список  в
соответствии с номерами, заданным массивом}
type
mass = array [1..10] of integer;
stroka=string[30];

procedure vvodmatr (var mass1:mass;namefile:stroka;
                    var n:integer);
var
i:integer;
fin:text;
begin
assign(fin,namefile);
reset(fin);
for i:=1 to n do
begin
read(fin,mass1[i]);
readln(fin);
end;
close(fin);
end;

procedure vivodmatr (namefile:stroka; mass1,mass2:mass; n:integer; 
                                      var flag,flg1:boolean);
var
i:integer;
fout:text;
begin
 assign(fout,namefile);
if flag then
 rewrite(fout)
else
 append(fout);
if flag1 then
begin
 writeln('Исходный список');
 for i:=1 to n do
 begin
  write(fout,mass1[i]);
  writeln(fout);
 end;
end;
else
begin
 writeln('массив перестановки');
 for i:=1 to n do
 begin
 write(fout,mass2[i]);
 writeln;
 end;
 writeln('Переставленный массив');
 for i:=1 to n do
  begin
   write(fout,mass1[i]);
   writeln(fout);
  end;
end;
 close(fout);
end;

procedure perestr(var mass1:mass; mass2:mass; n:integer);
var
mass3:mass;
i:integer;
begin
for i:=1 to n do
mass3[mass2[i]]:=mass1[i];
mass1:=mass3;
end;

var
mass1, mass2:mass;
i,n:integer;
flag,flag1:boolean;

begin
writeln('введите количество элементов');
readln(n);
vvodmatr (mass1,'L14_in.txt',n);
flag:=true;
flag1:=true;
vivodmatr ('L14_out.txt',mass1,mass2,n,flag,flag1);
writeln('Введите массив номеров');
for i:=1 to n do
read(mass2[i]);
perestr(mass1,mass2,n);
flag:=false;
flag1:=false;
vivodmatr ('L14_out.txt',mass1,mass2,n,flag,flag1);
end.
Klik_1602 вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как сделать чтобы cwinch работал для char?? corri Общие вопросы C/C++ 1 18.10.2009 14:57
какой ну жен код чтобы открыть exe файл? mrs.rafanadal Общие вопросы Delphi 1 04.06.2009 11:50
Какой нужно установить драйвер на висту, чтобы bc_31 работал в граф.режиме? mfpit Общие вопросы C/C++ 1 17.05.2009 13:15
The Bat как настроить чтобы работал после trial BEYLERBEYİ2009 Софт 9 06.03.2009 09:19
Какой нужно написать код,чтобы свернуть форму Bigtyoma Общие вопросы Delphi 2 08.09.2008 23:22