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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.05.2012, 16:37   #1
Миша_misha
 
Регистрация: 05.03.2012
Сообщений: 7
По умолчанию обработка текстовых файлов

посмотрите,у меня не выводит......

в задании данные считываются из файла и результат выводится в файл...


Код:
var i,j:integer;
a:array [1..6] of array [1..6] of integer;g: text;

begin

AssignFile(input,'matr.txt');
Reset(input);

for i:=1 to 6 do
for j:=1 to 6 do Read(a[i][j]);
begin

for i:=1 to 6 do
for j:=1 to 6 do
begin
if (a[i,j] mod 2= 0)
then
a[i,j] := a[i,j] else a[i,j]:=a[i,j]+10;
end;
Writeln('matrica a');
for i:=1 to 6 do
begin
for j:=1 to 6 do write(a[i,j]:4);
writeln;end;end;
begin
Assign(g,'ab.txt');
ReWrite(g);
for i:=1 to 6 do
begin
for j:=1 to 6 do write(g,a[i,j]:4);
write(g,' ');
writeln;end;end;

close(g)
end.

Последний раз редактировалось Stilet; 07.05.2012 в 21:47.
Миша_misha вне форума Ответить с цитированием
Старый 07.05.2012, 16:56   #2
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

1) И Вам здрасте
2) Лучше написать задание
3) Лучше правильно оформлять код на данном прекрасном ресурсе (кнопочка с #)
Poma][a вне форума Ответить с цитированием
Старый 07.05.2012, 16:59   #3
whatever
a.k.a. Skull
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 963
По умолчанию

Код оформлять надо так:
Код:
var
  i,j:integer;
  a:array [1..6] of array [1..6] of integer;
  g:text;
begin
  AssignFile(input,'matr.txt');
  Reset(input);
  for i:=1 to 6 do
    for j:=1 to 6 do
      Read(a[i][j]); //из файла говоришь?

    for i:=1 to 6 do
      for j:=1 to 6 do
        begin
          if (a[i,j] mod 2= 0) then
            a[i,j] := a[i,j]   //что за бред?
          else
            a[i,j]:=a[i,j]+10;
        end;

    Writeln('matrica a');
      for i:=1 to 6 do
        begin
          for j:=1 to 6 do
            write(a[i,j]:4);
          writeln;
        end;

  Assign(g,'ab.txt');
  ReWrite(g);
  for i:=1 to 6 do
    begin
      for j:=1 to 6 do
        write(g,a[i,j]:4);
      write(g,' ');  //зачем? почему?
      writeln;
    end;
  close(g)
end.
А правильно вот так:
Код:
var
  i,j:integer;
  a:array [1..6,1..6] of integer;
  g:textfile;
begin
  AssignFile(input,'matr.txt');
  Reset(input);
  for i:=1 to 6 do
    for j:=1 to 6 do
      Read(input,a[i][j]);
  closefile(input);

  for i:=1 to 6 do
    for j:=1 to 6 do
        if (a[i,j] mod 2<> 0) then
          a[i,j]:=a[i,j]+10;

  Writeln('matrica a');
    for i:=1 to 6 do
      begin
        for j:=1 to 6 do
          write(a[i,j]:4);
        writeln;
      end;

  AssignFILE(g,'ab.txt');
  ReWrite(g);
  for i:=1 to 6 do
    begin
      for j:=1 to 6 do
        write(g,a[i,j]:4);
      write(g,#13#10);//для текстового файла можно было написать просто writeln(g);
    end;
  closeFILE(g)
И еще, нериторический (!!!) вопрос: зачем столько лишних begin-end'ов ?
Все тривиальное просто

Последний раз редактировалось whatever; 07.05.2012 в 17:07.
whatever вне форума Ответить с цитированием
Старый 08.05.2012, 09:27   #4
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Цитата:
Read(input,a[i][j]);
инпут можно не писать
Цитата:
AssignFILE
и
Цитата:
closeFILE
с дельфи путаешь!
Poma][a вне форума Ответить с цитированием
Старый 08.05.2012, 14:12   #5
whatever
a.k.a. Skull
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 963
По умолчанию

Цитата:
Сообщение от 'Poma
с дельфи путаешь!
Посмотри шеструю строчку кода из первого сообщения, это не я придумал.
Все тривиальное просто
whatever вне форума Ответить с цитированием
Старый 08.05.2012, 16:18   #6
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

сори, это кажись ТС напутал... и AssingFILE и просто Assign есть... странно...
Poma][a вне форума Ответить с цитированием
Старый 08.05.2012, 18:22   #7
Миша_misha
 
Регистрация: 05.03.2012
Сообщений: 7
По умолчанию

Цитата:
Сообщение от whatever Посмотреть сообщение
Код оформлять надо так:
Код:
var
  i,j:integer;
  a:array [1..6] of array [1..6] of integer;
  g:text;
begin
  AssignFile(input,'matr.txt');
  Reset(input);
  for i:=1 to 6 do
    for j:=1 to 6 do
      Read(a[i][j]); //из файла говоришь?

    for i:=1 to 6 do
      for j:=1 to 6 do
        begin
          if (a[i,j] mod 2= 0) then
            a[i,j] := a[i,j]   //что за бред?
          else
            a[i,j]:=a[i,j]+10;
        end;

    Writeln('matrica a');
      for i:=1 to 6 do
        begin
          for j:=1 to 6 do
            write(a[i,j]:4);
          writeln;
        end;

  Assign(g,'ab.txt');
  ReWrite(g);
  for i:=1 to 6 do
    begin
      for j:=1 to 6 do
        write(g,a[i,j]:4);
      write(g,' ');  //зачем? почему?
      writeln;
    end;
  close(g)
end.
А правильно вот так:
Код:
var
  i,j:integer;
  a:array [1..6,1..6] of integer;
  g:textfile;
begin
  AssignFile(input,'matr.txt');
  Reset(input);
  for i:=1 to 6 do
    for j:=1 to 6 do
      Read(input,a[i][j]);
  closefile(input);

  for i:=1 to 6 do
    for j:=1 to 6 do
        if (a[i,j] mod 2<> 0) then
          a[i,j]:=a[i,j]+10;

  Writeln('matrica a');
    for i:=1 to 6 do
      begin
        for j:=1 to 6 do
          write(a[i,j]:4);
        writeln;
      end;

  AssignFILE(g,'ab.txt');
  ReWrite(g);
  for i:=1 to 6 do
    begin
      for j:=1 to 6 do
        write(g,a[i,j]:4);
      write(g,#13#10);//для текстового файла можно было написать просто writeln(g);
    end;
  closeFILE(g)
И еще, нериторический (!!!) вопрос: зачем столько лишних begin-end'ов ?
А оно у вас хоть работает??у меня не идёт(
Миша_misha вне форума Ответить с цитированием
Старый 08.05.2012, 20:35   #8
whatever
a.k.a. Skull
Форумчанин
 
Регистрация: 17.11.2009
Сообщений: 963
По умолчанию

У нас хоть работает. Пруф.
Все тривиальное просто
whatever вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка текстовых файлов F1nt Общие вопросы C/C++ 0 13.02.2012 20:09
Обработка текстовых файлов Funy Помощь студентам 2 13.12.2011 19:07
Обработка текстовых файлов Grey Stallion Помощь студентам 1 24.02.2011 14:01
Обработка текстовых файлов. kolobot Помощь студентам 2 15.12.2010 21:14