Форум программистов
 
Регистрация на форуме тут, о проблемах пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Как купить рекламу на форуме


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

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


Ответ
 
Опции темы Поиск в этой теме
Старый 11.06.2008, 13:28   #1
Vladislav_87
Пользователь
 
Регистрация: 15.05.2008
Сообщений: 20
Вопрос Помогите исправить ошибку в задаче

7.Создать программный модуль,который позволяет выполнять запись
и чтение информации из списка и поместить его в библиотеку TPU.Использовать этот
модуль при написании программы,которая создает список А и вводит в него с
клавиатуры последовательность дейсвительных чисел.В процессе чтения
информации из списка А числа округляються до целых,записываються в список В.
Информация,содержащаяся в списках А и В распечатываеться на экране.

Код:
Program_kursova;
   uses crt,list;
   type
     Preal = ^real;                          { pointer na real }
     Pint = ^ integer;                      { pointer na integer }
   Var i,n:integer;
   s1,s2:Plist;
pr:preal;
hh:pint;
begin
  clrscr;                                         { Clear Scresn }
initlist(s1);                                   { Inletattiacia lista A }
initlist(s2);                                  { Inletattiacia lista B }
writeln(‘Vvedit kilkist elementiv spuska’);
readln(n);                                     { n = kilkist elementiv lista }
writeln(‘Vvedit sami elementu:’);
for i:=1 to n do
begin
    pr:=new(PReal);                 { Vudilennya pamati dlya }
 elementu ) 
       readln(pr^);                     { 3apevnennya elementu }
 klaviatyru )
       push(s1,pr);                      { 3apevnennya lista }
   end;
   writeln(‘Stack At’);              { Vuvedennya Lista A }
   while s1<>nil do
   begin                                       { yakscho s1=nil to list pystuy }
       pr:=pop(s1);                         { dutannya & lista }
       hh:=new(Pint);                    { Vudilennya pamati  }
       hh^:=round(pr^);                   { Qkruglennja }
       push(s2,hh);                            { 3apevnennya lista  B }
       writeln( ‘ ( ‘,pr^:7:3,’ ) ‘);       { vuvedennya  lista A}
   end;

   writeln(‘List B’);                          { vuvedennya lista B }
   while s2<>nil do                           { poku list ne pysyuy rebutu }
   begin                                           { Gistavannya elementiv z lista }
       hh:=pop(s2);
       writeln( ‘ ( ‘,hh^:3,’ ) ‘ );
   end;
   readln;
end.
-----------------------
Код:
unit list;
interface
type
 Plist = ^Tlist;                            {  pointer na list  }
 Tlist =record                            {  zapus lista  }
   info: Pointer;                           {  pointer na informaciy  }
   next: Plist;                              {  pointer  na nastupniy zapus  } 
end;
    procedure initlist (var s:plist);      {  Inicializacia spusky  }
    procedure push (var s:plist;p:pointer);     {  Vstsvka dannyh  }
    function pop(var s:Plist) : pointer;       {  vuvedennya z spusku  }   
implementation
procedure initlist (var: s :plist);
begin
    s:=nil;                                                     {  Inicializacia lista  }
end;
procedure push(var s:plist;p:pointer);
var n:plist:
begin
    if s=nil then                                     {yaks4o list pustuy }
    begin
      s:=new(Plist);                                  {  Vudilennya pamati  }
        s^.info:=p;                                      {  Vnesrnnya informacii  }
        s^.next:=nil;                                   {  inicializacia zminnoi  } 
    end else
    begin
        n:=new(Plist);                               { Vudilennya pamati  }
        n^.info:=p;                                  {  Vnesrnnya informacii  }
        n^,next:=s;                                     {  zapus novogo elementu  }
        s:=n;                                            {  Zvyazok novogo zapusy z ostannim }
    end;
end;
function pop(var s:Plist):pointer;          {  Vudilennya informacii z listu}
var r:pointer;
p:Plist;
begin
    p:=s;
    if p<>nil then                                    {  yaks4o list ne pusty  }
    begin
        if p^.next<>nil then begin
        while p^.next^.next<>nil do
        begin
            p:=p^,next;
    end;
        r:=p^.next^.info;
        p^.next:=nil;
      end else
      begin
          r:=p^.info;
          s:=nil;
      end;
    end else
    begin
        r:=nil;
    end;
pop:=r;
end;
end.

Последний раз редактировалось Alex21; 11.06.2008 в 16:10.
Vladislav_87 вне форума Ответить с цитированием
Старый 11.06.2008, 13:33   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,840
По умолчанию

И в чем проблема?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.06.2008, 13:42   #3
Vladislav_87
Пользователь
 
Регистрация: 15.05.2008
Сообщений: 20
По умолчанию

Stilet - ошибки
Vladislav_87 вне форума Ответить с цитированием
Старый 11.06.2008, 13:58   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,840
По умолчанию

Я в курсе что ошибки, но какие??
Это ты должен сказать.

Вот хотябы название программы либо убери либо удали из нее подчерк.
в описании initlist после var двоеточие удали.

У тебя чисто синтаксические ошибки - вот и пройдись по коду внимательнейшим образом и подредактируй ненужные помарки.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 04.07.2008, 11:27   #5
programmist8
учусь
 
Аватар для programmist8
 
Регистрация: 03.07.2008
Сообщений: 5
По умолчанию

Я полностью согласен с Stilet.
programmist8 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме 20000 рублей в месяц

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите исправить косяк в задаче на динамические переменные списки Taisja Помощь студентам 2 31.05.2008 20:49
Помогите дописать и исправить ошибку в задаче Vladislav_87 Паскаль, Turbo Pascal, PascalABC.NET 5 29.05.2008 23:14
Пожалуйста срочно помочь мне исправить ошибку в задаче Vladislav_87 Паскаль, Turbo Pascal, PascalABC.NET 8 20.05.2008 19:46
Помогите исправить ошибку в задаче VANOLORD Паскаль, Turbo Pascal, PascalABC.NET 9 19.05.2008 21:16
Помогите исправить ошибку Булат Общие вопросы Delphi 3 25.04.2008 09:01


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS