Спрашивать пароль до тех пор, пока он не будет введен правильно. пусть пароль будет "qwerty". еще нужно вывести сколько неуспешных попыток было до правильного внесения пароля. javascript
Здесь нужно использовать вс типизированный файл и, соответственно, вторую файловую переменную (fr2). Сделать это можно так: while not eof(fr) and (kol=0) do begin read(fr, Marshrut); if (Marshrut.NK.N <> '11') then write(fr2,Marshrut) else begin inc(kol); y:=Marshrut; end; end; if not eof(fr) then begin read(fr, Marshrut); write(fr2,Marshrut); end; if (kol=1) then write(fr2,y); Дальше нужно просто переписать оставшиеся записи из первого файла во второй. Затем оба файла закрыть, первый файл удалить, а второй переименовать (т.е. назвать его так, как назывался первый файл).
Попробуйте ещё вот такой вариант: (здесь k1 и k2 - целые, а y - типа ) if (Marshrut.NK.N = '11') then begin writeln('... '); inc(kol); y:=Marshrut; k1:=FilePos(fr)-1; k2:=FilePos(fr); if not eof(fr) then begin read(fr, Marshrut); seek (fr, k1); write(fr, Marshrut); seek (fr, k2); write (fr, y); end;
Сделать это можно так:
while not eof(fr) and (kol=0) do
begin
read(fr, Marshrut);
if (Marshrut.NK.N <> '11')
then write(fr2,Marshrut)
else begin inc(kol); y:=Marshrut; end;
end;
if not eof(fr) then
begin
read(fr, Marshrut);
write(fr2,Marshrut);
end;
if (kol=1) then write(fr2,y);
Дальше нужно просто переписать оставшиеся записи из первого файла во второй. Затем оба файла закрыть, первый файл удалить, а второй переименовать (т.е. назвать его так, как назывался первый файл).
Попробуйте ещё вот такой вариант:
(здесь k1 и k2 - целые, а y - типа )
if (Marshrut.NK.N = '11') then
begin
writeln('... ');
inc(kol);
y:=Marshrut;
k1:=FilePos(fr)-1;
k2:=FilePos(fr);
if not eof(fr) then
begin
read(fr, Marshrut);
seek (fr, k1);
write(fr, Marshrut);
seek (fr, k2);
write (fr, y);
end;
end;
Ну так во первых обяъвление процедуры должно быть
procedure InputMas1(var mas1:Tmas );
во вторых ты забыл end; т.е
begin
for i:=1 to 10 do
begin
mas1[i]:=random(n);
Write(mas1[i]:3);
end;
end; {забытый end}
в третьих ты не написал основную прграмму т.е забыл begin и не вызвал процедуру
InputMas1
begin
clrscr;
InputMas1(mas1);
readkey;
end.
Итого прога должна выглядеть примерно так
program Massiv
Uses Crt;
const n=10;
type TMas=array[1..n] of integer;
var mas1:TMas;
procedure InputMas1(var mas1:TMas);
var i:integer;
begin
for i:=1 to 10 do
begin
mas1[i]:=random(n);
Write(mas1[i]:3);
end;
end;
{Основная прога}
begin
clrscr;
InputMas1(mas1);
readkey;
end.
Держи ! Пользуйся на здоровье и будь внимательнее.