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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.11.2014, 18:49   #1
Asondo
Новичок
Джуниор
 
Регистрация: 07.11.2014
Сообщений: 1
По умолчанию Паскаль. Обработать файл с числами.

Задача в том, чтобы из файла в котором столбик чисел от 0 до 30, взять эти числа, и по схеме (в case все написано) перевести их в числа от 1 до 10. И столбик новых чисел саписать в другой файл.
У меня получается так, если в файле одна цифра. Вот код, как я думаю, чтобы сделать для стоблика цифр, но мне выдает ошибку. Помогите пожалуйста :3




Код:
program null;

var
  a: integer;
  t: text;

begin
  assign(t, 'input.txt');
  reset(t);
  repeat
    begin
      readln(t, a); 
      case a of
        0: a := 0;
        1: a := 1;
        2: a := 2;
        3..5: a := 3;
        6..8: a := 4;
        9..11: a := 5;
        12..13: a := 6;
        14..15: a := 7;
        16..17: a := 8;
        18..20: a := 9;
        21..30: a := 10;
      else writeln( 'lox');
      end;
      Close(t);
      assign(t, 'output.txt');
      rewrite (t);
      writeln(t, a);
    Close(t);
    end;
    Reset(t)
  until eof(t);
  Close(t);
end.

Последний раз редактировалось Stilet; 07.11.2014 в 19:13.
Asondo вне форума Ответить с цитированием
Старый 07.11.2014, 19:05   #2
VIK_aka_TOR
Участник клуба
 
Аватар для VIK_aka_TOR
 
Регистрация: 30.01.2011
Сообщений: 1,578
По умолчанию

Для каждого файла сделайте по переменной. И лучше не через repeat делать, а while. На случай если файл будет пустым.
Сейчас у вас: прочитал число, закрыл файл, записал в другой. Но при повторном открытии вы будете опять в самом начале файла. Итого зацикливание будет. Да и к тому же вы проверяете окончание файла записи, а не чтения.
пишу код не только за печеньки

Последний раз редактировалось VIK_aka_TOR; 08.11.2014 в 13:56.
VIK_aka_TOR вне форума Ответить с цитированием
Старый 07.11.2014, 19:11   #3
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Ещё один гениальный копипастер 80-го уровня!

использование турбопаскакаля обязательно?
использование case обязательно?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 08.11.2014, 14:26   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

такой вариант устроит?

Код:
program null;

var
  a: integer;
  t, t2: text;

begin
  assign(t, 'input.txt');
  reset(t);
  assign(t2, 'output.txt');
  rewrite(t2);
  while not eof(t) do begin
      readln(t, a); 
      case a of
        0..2: begin end; {ничего делать не нужно}
        3..5: a := 3;
        6..8: a := 4;
        9..11: a := 5;
        12..13: a := 6;
        14..15: a := 7;
        16..17: a := 8;
        18..20: a := 9;
        21..30: a := 10;
      else writeln( 'lox');
      end;
      writeln(t2, a);
  end;
  Close(t);
  Close(t2);
end.

Последний раз редактировалось Serge_Bliznykov; 08.11.2014 в 14:29.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Паскаль. Заполнить файл случайными целыми числами. Определить, сколько различных компонентов находится в файле. НужнаПомощь Паскаль, Turbo Pascal, PascalABC.NET 4 04.04.2014 21:18
Создать текстовый файл, строки которого содержат целые числа. Обработать файл следующим образом: напечатать все отрицательные... Anton94.by Паскаль, Turbo Pascal, PascalABC.NET 2 08.02.2012 19:23
Текстовый файл с числами - обработать и записать в другие два файла (Delphi) Sweet-_-Orange Помощь студентам 10 15.01.2012 21:36
Паскаль. Открыть файл и обработать. ovram Помощь студентам 6 27.01.2011 22:08
Типизированный файл с натуральными числами. Числа, встречающиеся 1 раз переписать в другой файл [Паскаль] mifomen Помощь студентам 7 16.12.2010 22:00