martineztop
12.06.2022 05:51

Перечислите условия отбора, используемых в СУБД Access...

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
shukrona2006221
08.01.2021 21:29

const

   handsfree = false;

   nmax = 10;

   random_min = -50;

   random_max = 50;

var

   a: array[0..nmax] of real;

   i, n: integer;

   sum, x: real;

begin

   {ввод массива}

   n := nmax;

   if handsfree then begin

       for i := 0 to n do

       begin

           a[i] := random(random_max - random_min) + random_min;

           write(a[i], ' ');

       end

   end

   else begin

       for i := 0 to n do

           readln(a[i]);

   end;

   writeln();

   

   {подсчет суммы}

   write('x = ');

   readln(x);

   

   sum := a[n];

   for i := n - 1 downto 0 do

       sum := sum * x + a[i];

   writeln('S = ', sqrt(sum));

end.

0,0(0 оценок)
Ответ:
милана59
22.03.2021 19:31
Здесь нужно использовать вс типизированный файл и, соответственно, вторую файловую переменную (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;

end;
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота