Чтение И Вывод На Экран Данных

Тема в разделе "Pascal and Delphi", создана пользователем L1nuXXX01D, 23 апр 2013.

  1. L1nuXXX01D

    L1nuXXX01D New Member

    Регистрация:
    23 апр 2013
    Сообщения:
    1
    Симпатии:
    0
    Паскаль

    первая программа читает и записывает данные в файл

    Код (Delphi):
    program advanced;
    uses crt;
    {$R-}
    type POtraceno=record
    day:integer;
    month:integer;
    suma:real;
    tip:string;
    end;
    var f:File of potraceno;
    evidens:array [1..60] of potracenoi;

    k,n,i,j:integer;


    begin
    clrscr;
    assign(f,'C:\Users\Egor\Desktop\rat0ne.txt');
    rewrite(f);

    for i:=1 to 60 do

    begin
    for i:=1 to 8 do
    begin evidens[i].day:=i+21; evidens[i].month:=2;end;
    for i:=8 to 39 do
    begin evidens[i].day:=i-7; evidens[i].month:=3;end;
    for i:=39 to 60 do
    begin
    evidens[i].day:=i-38; evidens[i].month:=4; end;
    for i:=1 to 60 do
    begin
    writeln('cislo: ',evidens[i].day,' luna a ', evidenta[i].month,' -potraceno:');
    writeln('- suma ');readln(evidens[i].suma);
    writeln('- tipul ');readln(evidens[i].tip);
    end;
    write(f, evidens[i]);
    end;
    close(f);
    readln;
    end.
    Вот эта прога записывает данные в файл!

    а следующая по идее должна читать их и выводить на экран

    Код (Delphi):
    program gapoj;
    uses crt;   {$R-}
    type potraceno=record
    day:integer;
    month:integer;
    suma:integer;
    tip:string;
    end;
    var f1:file of potraceno;
    evidens:array [1..60] of potraceno;

    k,n,i,j:integer;
    begin
    clrscr;

    assign(f1, 'c:\Users\Egor\Desktop\Rat0ne.txt');
    reset(f1);
    read(f1,evidens[j]);
    for j:=1 to 60 do
    begin
    writeln(' ',evidens[j].day,'.',evidens[j].month,' potraceno:');
    writeln(evidens[j].suma,' $ dlia ',evidens[j].tip);
    end;
    close(f1);
    readln;
    end.
    Однако прога выводит на экран только


    Код (Delphi):
    0.0 potraceno
    0$ dlia
    помогите понять почему)
     
  2. hosm

    hosm * so what *

    Регистрация:
    18 май 2009
    Сообщения:
    2.450
    Симпатии:
    7
    ошибка при записи, убери for i:=1 to 60 do begin в самом начале программы, и end перед записью в файл, тут совсем не нужен вложенный цикл, можно в одном цикле выводить данные на экран и в файл (тем более, у тебя там одна и та же переменная-счетчик i во внешнем и вложенном цикле).
     
Загрузка...

Поделиться этой страницей