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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.10.2010, 13:50   #1
artemkasablin
Новичок
Джуниор
 
Регистрация: 17.10.2010
Сообщений: 1
По умолчанию БД

Подскажите почему ошибка в инструкции
Код:
Program lab03;
uses crt;
type tabl=record
          e:string[30];
          cst:integer;
          ed:string[20];
          cok:integer;
          og:integer;
          pg:integer;
          end;
     fail=file of tabl;
var b:boolean;
procedure CreateFile(var f:fail);
var t:tabl;
begin
{ᮧ¤**ЁҐ *®ў®Ј® д*©«*}
clrscr;
rewrite(f);
writeln('‚ўҐ¤ЁвҐ ¤***лҐ ў Ў*§г:');
repeat
with t do
   begin
   write('Ќ*Ё¬Ґ*®ў**ЁҐ ®б*®ў*®Ј® нЄ®*®¬ЁзҐбЄ®Ј® Ї®Є*§*вҐ«п  ');readln(e);
   write('‚ўҐ¤ЁвҐ Є®¤ бва®ЄЁ  ');readln(cst);
   write('‚ўҐ¤ЁвҐ Ґ¤Ё*Ёжг Ё§¬ҐаҐ*Ёп  ');readln(ed);
   write('‚ўҐ¤ЁвҐ Є®¤ ЋЉ…€ ');readln(cok);
   write('‚ўҐ¤ЁвҐ зЁб«® §* ®взҐв*л© ЇҐаЁ®¤  ');readln(og);
   write('ўўҐ¤ЁвҐ зЁб«® §* Їа®и«л© Ј®¤  ');readln(pg);
   end;
write(f,t);
until readkey=#27;
close(f);
readln;
end;
{˜*ЇЄ* в*Ў«Ёжл}
Procedure Tab;
begin
writeln('---------------------------------------------------------------------');
writeln('|  ќЄ. Ї®Є*§*⥫м | Љ®¤ бва®ЄЁ | …¤. Ё§¬. | ЋЉ…€ | Ћвз.Ј®¤ | Џа. Ј®¤ |');
writeln('---------------------------------------------------------------------');
end;
{®вЄалвЁҐ д*©«*}
procedure ResetFile(var f:fail;var b:boolean);
begin
b:=true;
{$I-}reset(f);{$I+}
if IOResult<>0 then
  begin
   b:=false;
   writeln('д*©« Ґйс *Ґ ᮧ¤** ўҐа*ЁвҐбм Є Їг*Євг 1');
   readln;
   exit;
  end;
 end;
 {Їа®б¬®ва д*©«*}
 procedure ReadFile(var f:fail);
 var t:tabl;
 begin
 clrscr;
 ResetFile(f,b);
 writeln('Џ®«*л© бЇЁб®Є: ':40);
 writeln;
 Tab;
 while not eof(f) do
  begin
   read(f,t);
   with t do
    begin
    gotoXY(1,whereY);write('|',e);
    gotoXY(16,whereY);write('|',cst);
    gotoXY(25,whereY);write('|',ed);
    gotoXY(35,whereY);write('|',cok);
    gotoXY(55,whereY);writeln('|',pg);
    end;
writeln('---------------------------------------------------------------------');
readln;
close(f);
end;
{§*¬Ґ** §*ЇЁбЁ}
procedure Zamena(f:fail);
var n:integer;
    t:tabl;
begin
clrscr;
ResetFile(f,b);
write('‚ўҐ¤ЁвҐ *®¬Ґа §*ЇЁбЁ Є®в®аго ўл е®вЁвҐ Ё§¬Ґ*Ёвм ');
readln(n)
if(n<1)or(filesize(f)<n) then
  begin
   writeln('‚ д*©«Ґ *Ґв в*Є®© §*ЇЁбЁ!');
   readln;
   exit;
  end;
writeln('‚ўҐ¤ЁвҐ *®ўлҐ ᢥ¤Ґ*мп ');
with t do
  begin
   write('Ќ*Ё¬Ґ*®ў**ЁҐ ®б*®ў*®Ј® нЄ®*®¬ЁзҐбЄ®Ј® Ї®Є*§*вҐ«п  ');readln(e);
   write('‚ўҐ¤ЁвҐ Є®¤ бва®ЄЁ  ');readln(cst);
   write('‚ўҐ¤ЁвҐ Ґ¤Ё*Ёжг Ё§¬ҐаҐ*Ёп  ');readln(ed);
   write('‚ўҐ¤ЁвҐ Є®¤ ЋЉ…€ ');readln(cok);
   write('‚ўҐ¤ЁвҐ зЁб«® §* ®взҐв*л© ЇҐаЁ®¤  ');readln(og);
   write('ўўҐ¤ЁвҐ зЁб«® §* Їа®и«л© Ј®¤  ');readln(pg);
  end;
see;(f,n-1);
write(f,t);
close(f);
readln;
end;
{¤®Ў*ў«Ґ*ЁҐ}
procedure Add(var f:fail);
var t:tabl;
begin
clrscr;
ResetFile(f,b);
with t do
 begin
   write('Ќ*Ё¬Ґ*®ў**ЁҐ ®б*®ў*®Ј® нЄ®*®¬ЁзҐбЄ®Ј® Ї®Є*§*вҐ«п  ');readln(e);
   write('‚ўҐ¤ЁвҐ Є®¤ бва®ЄЁ  ');readln(cst);
   write('‚ўҐ¤ЁвҐ Ґ¤Ё*Ёжг Ё§¬ҐаҐ*Ёп  ');readln(ed);
   write('‚ўҐ¤ЁвҐ Є®¤ ЋЉ…€ ');readln(cok);
   write('‚ўҐ¤ЁвҐ зЁб«® §* ®взҐв*л© ЇҐаЁ®¤  ');readln(og);
   write('ўўҐ¤ЁвҐ зЁб«® §* Їа®и«л© Ј®¤  ');readln(pg);
 end;
seek(f,filesize(f));
write(f,t);
close(f);
readln;
end;
var f:fail;
    w:char;
Begin
clrscr;
assign(f,'c:\bazik.txt');
b:=false;
repeat
clrscr;
writeln('‚лЎҐаЁвҐ ¦Ґ«*Ґ¬®Ґ ¤Ґ©бвўЁҐ ');
writeln('1.‘®§¤**ЁҐ д*©«*');
writeln('2.Џа®б¬®ва д*©«*');
writeln('3.€§¬Ґ*Ґ*ЁҐ д*©«*');
writeln('4.„®Ў*ў«Ґ*ЁҐ §*ЇЁбҐ©');
writeln('¤агЈ®=ўл室');
readln(w);
case w of
'1':CreateFile(f);
'2':Readfile(f);
'3':Zamena(f);
'4':Add(f);
else exit;
end;
intil not (w in ['1'..'4'];
end.

Последний раз редактировалось Stilet; 24.10.2010 в 14:34.
artemkasablin вне форума Ответить с цитированием
Старый 24.10.2010, 14:36   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
intil not (w in ['1'..'4'];
Может until?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


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