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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.01.2015, 14:50   #1
Вадим Вергун
Пользователь
 
Регистрация: 01.11.2014
Сообщений: 52
По умолчанию Работа с файлами ПаскальABC.NET

Прошу помочь. Имеется текстовый файл файл в нём строки состоящие из нулей и единиц.требуется перенести содержимое файла в двумерный массив. Однако не переносит! Говорит что неверный формат входной строки! Подскажите что не так.
Код:
uses
  ABCObjects, GraphABC;

var
  y,u:integer;
  a: array[1..8,1..8] of integer;
  f: text;

procedure fail();
var i,i1:integer;
begin
  assign(f,'Карта.txt');
   reset(f);
   
   for i := 1 to 8 do
   begin
  read(f,a[i,u]);
  y:=y+1;
  if y=7 then
   begin
   readln(f,a[i,u]);
   u:=u+1;
   y:=0;
   end;
  end;
end;
procedure perenos(); //вывод на экран
var
  i, i1: integer;
begin
  
  for i := 1 to 8 do
    for i1 := 1 to 8 do 
    begin
      if a[i, i1] = 1 then
      begin
      Setpixel(i,i1,clred);
        end;
    end;    
end;

begin
u:=1;
fail;
end.


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

Модератор.

Последний раз редактировалось Serge_Bliznykov; 11.01.2015 в 15:36.
Вадим Вергун вне форума Ответить с цитированием
Старый 11.01.2015, 15:53   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ну, вообще более чем странная процедура чтения...

попробуйте такой код:
Код:
uses
  ABCObjects, GraphABC;

var
  a: array[1..8,1..8] of integer;

procedure fail();
var 
  i,i1 : integer;
  f : text;
begin
  assign(f,'Карта.txt');
  reset(f);

  for i := 1 to 8 do begin
    for i1 := 1 to 8 do 
        Read(f, a[i, i1]);
    ReadLn(f);
  end;  
  Close(f);
end;

procedure PrintArray();
var
  i, i1: integer;
begin
  for i := 1 to 8 do begin
    for i1 := 1 to 8 do 
        Write(a[i, i1]:2);
    WriteLn;
  end;  
end;    

procedure perenos(); //вывод на экран
var
  i, i1: integer;
begin
  SetBrushColor( clRed );
  for i := 1 to 8 do
    for i1 := 1 to 8 do 
    begin
      if a[i, i1] = 1 then
      begin
        {Setpixel(i,i1,clred);}
        Rectangle((i-1)*10,(i1-1)*10,i*10, i1*10);
      end;
    end;    
end;

begin
  fail();
  perenos();
end.
если что, файл "Карта.txt" в архиве: Карта.zip
Serge_Bliznykov вне форума Ответить с цитированием
Старый 11.01.2015, 20:58   #3
Вадим Вергун
Пользователь
 
Регистрация: 01.11.2014
Сообщений: 52
По умолчанию

Спасибо! Работает как надо! В роде разобрался с нужной процедурой.
Вадим Вергун вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Модули.Таблица.ПаскальABC dimka123 Паскаль, Turbo Pascal, PascalABC.NET 5 18.09.2014 22:26
Работа с файлами: запись, добавление, чтение (найти ошибку в коде) / C для начинающих Надо создать программу для работы с файлами Konlor Общие вопросы C/C++ 2 18.05.2014 12:37
Нужно 0разобратся с кодом Visual c++ .net работа с файлами Богд@Н Visual C++ 1 04.01.2012 13:37