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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 25.05.2014, 05:50   #1
tmpUserName
Новичок
Джуниор
 
Регистрация: 13.05.2014
Сообщений: 2
По умолчанию Кракозябры в Pascal ABC.NET

Такая вот простенькая программа на PABC.NET. Всё, казалось бы, работает, но при выводе вместо строк получаются кракозябры . Подскажите, будьте добры, как исправить (именно для среды PABC.NET)

Код:
Type List= ^TVList;
     
     TV= Record
      Date: Record
             Year: Word;          
             Month: Byte;         
             Day: Byte;          
            End;
      Time: Record
             TimeHour: Byte;     
             TimeMin: Byte;     
            End;        
      Name: String[30];        
      ChannelNum: Word;        
      Genre: String[64];       
     End;
     
     TVList= Record 
      Data: TV;
      next: List;
      prev: List;
     End;
     
     TList= Record 
      first: List;
      last: List;
     End;
     
Var tmpList: List;
    SList: TList;
    tmpRec: TV;
 
Procedure AddToTop(Var tmpTList: TList; Const tmpUnit: List);
 Begin
  If tmpUnit= nil Then Exit;
  tmpUnit^.next:= nil;
  tmpUnit^.prev:= nil;
  If tmpTList.first= nil Then
   Begin
    tmpTList.first:= tmpUnit;
    tmpTList.last:= tmpUnit;
   End
  Else
   Begin
    tmpUnit^.next:= tmpTList.first;
    tmpTList.first^.prev:= tmpUnit;
    tmpTList.first:= tmpUnit;
   End;
 End;
 
Procedure Adding;
 Var i, N: Integer;
 Begin
  Write('Повторить раз: ');
  Readln(N);
  Writeln;
  For i:= 1 To N Do
    Begin
     New(tmpList);
     Write('Год: ');
     Readln(tmpList^.Data.Date.Year);
     Write('Месяц: ');
     Readln(tmpList^.Data.Date.Month);
     Write('День: ');
     Readln(tmpList^.Data.Date.Day);
     Write('Часы: ');
     Readln(tmpList^.Data.Time.TimeHour);
     Write('Минуты: ');
     Readln(tmpList^.Data.Time.TimeMin);
     Write('Название: ');
     Readln(tmpList^.Data.Name);
     Write('Канал: ');
     Readln(tmpList^.Data.ChannelNum);
     Write('Жанр: ');
     Readln(tmpList^.Data.Genre);
     AddToTop(SList, tmpList);
     Writeln('-------------------------------------------------');
    End;
 End;
 
Procedure Show;
 Var tmpList: List;
 Begin
  tmpList:= SList.first;
  If SList.first= nil Then
   Begin
    Writeln('Пусто');
   End
  Else
   Begin
    While tmpList<> nil Do
     Begin
      Writeln('[Вывод]');
      Writeln;
      Write('  Дата: ');
      Write(tmpList^.Data.Date.Year);
      Write('.', tmpList^.Data.Date.Month);
      Write('.', tmpList^.Data.Date.Day);
      Writeln;
      Write('  Время: ', tmpList^.Data.Time.TimeHour);
      Write(':', tmpList^.Data.Time.TimeMin);
      Writeln;
      Writeln('  Название: ', tmpList^.Data.Name);
      Writeln('  Канал: ', tmpList^.Data.ChannelNum);
      Writeln('  Жанр: ', tmpList^.Data.Genre);
      Writeln;
      tmpList:= tmpList^.next;
     End;
  End;
 End;
 
Begin
 SList.first:= nil;
 SList.last:= nil;
 Adding;
 Show;
End.


________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(это кнопочка на панели форматирования с решёточкой #)
Не забывайте об этом!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 25.05.2014 в 07:54.
tmpUserName вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Pascal ABC.NET gogomon93 Помощь студентам 4 01.12.2013 17:56
Pascal ABC Net sarkisova_elena Паскаль, Turbo Pascal, PascalABC.NET 2 07.02.2012 00:40
Pascal ABC.NET BuTaJI Помощь студентам 1 26.04.2011 20:10
Pascal ABC net DiLLe Паскаль, Turbo Pascal, PascalABC.NET 1 08.06.2010 23:20
Pascal ABC .NET no4_sniper Паскаль, Turbo Pascal, PascalABC.NET 0 17.10.2009 00:21