задача: Имеется док-т в виде справки длЯ 10 чел. Описать его ввиде записи по след форме ______________________________________ | Сотрудник .......| Должность | Мес. оклад...| _______________| ................ | .....................| |Фам | таб номер| ................. | .................... |
klem4
22.04.2007 23:55
type
TWorker = Recordname: String; // фио
tabNumber: LongInt; // табельный номер
end;
TRecord = Record
W: TWorker; // сотрудник
workType: String; // должность
money: LongInt; // оклад
end;
так чтоли ?
he11i
23.04.2007 0:06
Цитата(klem4 @ 22.04.2007 20:55)
type
TWorker = Recordname: String; // фио
tabNumber: LongInt; // табельный номер
end;
TRecord = Record
W: TWorker; // сотрудник
workType: String; // должность
money: LongInt; // оклад
end;
так чтоли ?
Как их в массив забить ? Он при вводе не видит вложенную запись
klem4
23.04.2007 0:08
x: Array [1..5] of TRecord;
// ...
for i := 1to5do
x[i].W.name := 'Вася';
he11i
3.05.2007 2:59
program SR;
uses crt;
type
TWorker = Recordname: String[20];
tabNumber: LongInt;
end;
TRecord = Record
W: TWorker;
workType: String[10];
money: LongInt;
end;
spr=array[1..10] of trecord;
var
a:spr;
i,x,b:integer;
procedure vvod;
begin
clrscr;
writeln('BBeguTe kol-vo zapisey');
readln(b);
for i:=1to b dobegin
writeln('BBeguTe gaHHbIe');
writeln('Surname?');
readln(a[i].w.name);
writeln('Table number?');
readln(a[i].w.tabnumber);
writeln('WorkType?');
readln(a[i].worktype);
writeln('Money?');
readln(a[i].money);
end;
end;
procedure vivod;
var
j:integer;
begin
clrscr;
j:=3;
gotoxy(13,1);write('sotrudnik');
gotoxy(45,1);write('WorkType ');
gotoxy(65,1);writeln('Money ');
gotoxy(2,2);write('Surname ');
gotoxy(25,2);write('Tablenumber ');
writeln;
for i:=1to b dobegin
j:=j+1;
gotoxy(2,j);write(a[i].w.name);
gotoxy(26,j);write(a[i].w.tabnumber:4);
gotoxy(48,j);write(a[i].worktype);
gotoxy(67,j);write(a[i].money);
writeln;
end;
readln;
end;
procedure vibor;
var
j:integer;
s:string[20];
begin
clrscr;
writeln('BBeguTe surname');
readln(s);
clrscr;
j:=3;
gotoxy(13,1);write('sotrudnik');
gotoxy(45,1);write('WorkType ');
gotoxy(65,1);writeln('Money ');
gotoxy(2,2);write('Surname ');
gotoxy(25,2);write('Tablenumber ');
writeln;
for i:=1to b dobeginif a[i].w.name=s thenbegin
j:=j+1;
gotoxy(2,j);write(a[i].w.name);
gotoxy(26,j);write(a[i].w.tabnumber:4);
gotoxy(48,j);write(a[i].worktype);
gotoxy(67,j);write(a[i].money);
writeln;
end;
end;
readln;
end;
beginrepeat
clrscr;
gotoxy(30,8);write('1 - VVod dannih');
gotoxy(30,10);write('2 - Vivod dannih');
gotoxy(30,12);write('3 - Viborka sotrudnika');
gotoxy(30,14);writeln('4 - Exit');
gotoxy(30,18);readln(x);
case x of1:vvod;
2:vivod;
3:vibor;
end;
until x=4;
end.
Корректно ли написана программа?)
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.