• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

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

  • Автор темы L1nuXXX01D
  • Дата начала
L

L1nuXXX01D

Паскаль

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

Код:
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.

Вот эта прога записывает данные в файл!

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

Код:
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.
Однако прога выводит на экран только


Код:
0.0 potraceno
0$ dlia
помогите понять почему)
 
H

hosm

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

Обучение наступательной кибербезопасности в игровой форме. Начать игру!