Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program AlexVerb;
- uses Crt;
- const head='ЙНННННННЛННННЛНННННЛНННННЛННННННЛНННН»';
- opisanie='єIntegerєRealєChar1єChar2єStringєRealє';
- kstrok='МНННННННОННННОНННННОНННННОННННННОНННН№';
- content='є є є є є є є';
- footer='ИНННННННКННННКНННННКНННННКННННННКННННј';
- M=20;
- type
- z=record
- c: array [1..2] of char;
- d: string[3];
- e: real;
- end;
- TRec=record
- a: integer;
- b: real;
- v: z;
- end;
- ptrList=^TList;
- TList=record
- inf: TRec;
- next:ptrList;
- end;
- var
- n:integer;
- vibor: byte;
- rec: array[1..M] of TRec;
- pList:ptrList;
- procedure wait;
- begin
- writeln;
- writeln('Nazhmite lybyu klavishy');
- readkey;
- end;
- procedure CreateList;
- var
- p1,p2:ptrList;
- i:integer;
- rec: TRec;
- begin
- ClrScr;
- writeln(head);
- writeln(opisanie);
- {!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!}
- i:=1;
- gotoXY(1,i*2+1);
- writeln(kstrok);
- writeln(content);
- gotoXY(2,i*2+2);
- readln(rec.a);
- gotoXY(10,i*2+2);
- readln(rec.b);
- gotoXY(15,i*2+2);
- readln(rec.v.c[1]);
- gotoXY(21,i*2+2);
- readln(rec.v.c[2]);
- gotoXY(27,i*2+2);
- readln(rec.v.d);
- gotoXY(34,i*2+2);
- readln(rec.v.e);
- new(p1);
- p1^.inf := rec;
- p1^.next := nil;
- pList := p1;
- {!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!}
- for i:=2 to n do
- begin
- gotoXY(1,i*2+1);
- writeln(kstrok);
- writeln(content);
- gotoXY(2,i*2+2);
- readln(rec.a);
- gotoXY(10,i*2+2);
- readln(rec.b);
- gotoXY(15,i*2+2);
- readln(rec.v.c[1]);
- gotoXY(21,i*2+2);
- readln(rec.v.c[2]);
- gotoXY(27,i*2+2);
- readln(rec.v.d);
- gotoXY(34,i*2+2);
- readln(rec.v.e);
- {!!!!!!!!!!!!!!!!!!!!!!!!!!!!!}
- new(p1^.next);
- p1 := p1^.next;
- p1^.next := nil;
- p1^.inf := rec;
- {!!!!!!!!!!!!!!!!!!!!!!!!!}
- end;
- gotoXY(1,i*2+3);
- writeln(footer);
- wait;
- end;
- procedure ViewList;
- var
- p1:ptrList;
- i:integer;
- rec:TRec;
- begin
- ClrScr;
- writeln(head);
- writeln(opisanie);
- p1:=pList;
- {!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!}
- i:=1;
- {!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!}
- while p1<>nil do begin
- {/////////////////////////////}
- rec := p1^.inf; {!!!!!!!!!!!!!!}
- {//////////////////////////////}
- gotoXY(1,i*2+1);
- writeln(kstrok);
- writeln(content);
- gotoXY(2,i*2+2);
- writeln(rec.a);
- gotoXY(10,i*2+2);
- writeln(rec.b:1:1);
- gotoXY(15,i*2+2);
- writeln(rec.v.c[1]);
- gotoXY(21,i*2+2);
- writeln(rec.v.c[2]);
- gotoXY(27,i*2+2);
- writeln(rec.v.d);
- gotoXY(34,i*2+2);
- writeln(rec.v.e:1:1);
- p1:=p1^.next;
- {!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!}
- inc(i);
- {!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!}
- end;
- gotoXY(1,i*2+1);
- writeln(footer);
- wait;
- end;
- procedure DelList;
- var
- p1,p2,pList:ptrList;
- begin
- p1:=pList;
- while p1<>nil do begin
- p2:=p1;
- p1:=p1^.next;
- dispose(p1);
- end;
- pList:=nil;
- end;
- procedure Vvod;
- var
- i: integer;
- begin
- ClrScr;
- writeln(head);
- writeln(opisanie);
- for i:=1 to n do
- begin
- gotoXY(1,i*2+1);
- writeln(kstrok);
- writeln(content);
- gotoXY(2,i*2+2);
- readln(rec[i].a);
- gotoXY(10,i*2+2);
- readln(rec[i].b);
- gotoXY(15,i*2+2);
- readln(rec[i].v.c[1]);
- gotoXY(21,i*2+2);
- readln(rec[i].v.c[2]);
- gotoXY(27,i*2+2);
- readln(rec[i].v.d);
- gotoXY(34,i*2+2);
- readln(rec[i].v.e);
- end;
- gotoXY(1,i*2+3);
- writeln(footer);
- wait;
- end;
- procedure Vivod;
- var
- i: integer;
- begin
- ClrScr;
- writeln(head);
- writeln(opisanie);
- for i:=1 to n do
- begin
- gotoXY(1,i*2+1);
- writeln(kstrok);
- writeln(content);
- gotoXY(2,i*2+2);
- writeln(rec[i].a);
- gotoXY(10,i*2+2);
- writeln(rec[i].b:1:1);
- gotoXY(15,i*2+2);
- writeln(rec[i].v.c[1]);
- gotoXY(21,i*2+2);
- writeln(rec[i].v.c[2]);
- gotoXY(27,i*2+2);
- writeln(rec[i].v.d);
- gotoXY(34,i*2+2);
- writeln(rec[i].v.e:1:1);
- end;
- gotoXY(1,i*2+3);
- writeln(footer);
- wait;
- end;
- procedure SaveInFile;
- var
- f: file of TRec;
- i: integer;
- rec: TRec;
- begin
- ClrScr;
- assign(f,'alexverb.txt');
- rewrite(f);
- writeln(head);
- writeln(opisanie);
- for i:=1 to n do
- begin
- gotoXY(1,i*2+1);
- writeln(kstrok);
- writeln(content);
- gotoXY(2,i*2+2);
- readln(rec.a);
- gotoXY(10,i*2+2);
- readln(rec.b);
- gotoXY(15,i*2+2);
- readln(rec.v.c[1]);
- gotoXY(21,i*2+2);
- readln(rec.v.c[2]);
- gotoXY(27,i*2+2);
- readln(rec.v.d);
- gotoXY(34,i*2+2);
- readln(rec.v.e);
- write(f,rec);
- end;
- gotoXY(1,i*2+3);
- writeln(footer);
- close(f);
- wait;
- end;
- procedure ViewFile;
- var
- f: file of TRec;
- rec: TRec;
- i: integer;
- begin
- ClrScr;
- assign(f,'alexverb.txt');
- reset(f);
- i:=0;
- writeln(head);
- writeln(opisanie);
- while not eof(f) do
- begin
- read(f,rec);
- inc(i);
- gotoXY(1,i*2+1);
- writeln(kstrok);
- writeln(content);
- gotoXY(2,i*2+2);
- writeln(rec.a);
- gotoXY(10,i*2+2);
- writeln(rec.b:1:1);
- gotoXY(15,i*2+2);
- writeln(rec.v.c[1]);
- gotoXY(21,i*2+2);
- writeln(rec.v.c[2]);
- gotoXY(27,i*2+2);
- writeln(rec.v.d);
- gotoXY(34,i*2+2);
- writeln(rec.v.e:1:1);
- end;
- gotoXY(1,i*2+3);
- writeln(footer);
- close(f);
- wait;
- end;
- procedure Menu;
- begin
- repeat
- repeat
- ClrScr;
- Writeln('1. Vvod dannbIx');
- Writeln('2. Vivod dannbIx');
- Writeln('3. SaveInFile');
- Writeln('4. ViewFile');
- Writeln('5. CreateList');
- Writeln('6. ViewList');
- Writeln('7. DelList');
- Writeln('8. Exit');
- Write('Vash vibor:>');
- Readln(vibor);
- until (vibor>0) and (vibor<9);
- Writeln;
- Write('Vi vibrali: ');
- case vibor of
- 1:begin
- Writeln('Vvod massiva');
- writeln('Vvedite chislo strok');
- readln(n);
- Vvod;
- end;
- 2:begin
- Writeln('Vivod massiva');
- Vivod;
- end;
- 3:begin
- Writeln('SaveInFile');
- writeln('Vvedite chislo strok');
- readln(n);
- SaveInFile;
- end;
- 4:begin
- Writeln('ViewFile');
- ViewFile;
- end;
- 5:begin
- Writeln('CreateList');
- writeln('Vvedite chislo strok');
- readln(n);
- CreateList;
- end;
- 6:begin
- Writeln('ViewList');
- ViewList;
- end;
- 7:begin
- Writeln('DelList');
- DelList;
- end;
- end;
- until vibor=8;
- end;
- begin
- Menu;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement