program laba2;
uses crt;
Const A:array[1..3]of string =('Иван','Борис','Сергей');
Const B:array[1..3]of string =('Файл1','Файл2','Файл3');
Const C:array[1..8]of string =('Запрет','Передача прав','Запись',
'Запись, Передача прав','Чтение','Чтение, Передача прав','Чтение, Запись','Полные права');
var
i,n,k,j,q,p:integer;
u,y1,y2: string;
D:array[1..9,1..3] of integer;
begin
clrscr;
n:=3;
k:=3;
j:=8;
D[1][1]:=8;
D[1][2]:=8;
D[1][3]:=8;
D[2][1]:=1;
D[2][2]:=1;
D[2][3]:=1;
D[3][1]:=3;
D[3][2]:=1;
D[3][3]:=2;
writeln ('Пользователь'); readln(u);
for i:=1 to n do
if u = a[i] then begin q:=i;
writeln ('Идентификация прошла успешно, добро пожаловать в систему', ' ',a[q]); end;
if q = 0
then writeln('Неправильное имя пользователя.')
else begin
writeln('Ваши права:');
end;
for i:=1 to 3 do
writeln(B[i], ' - ', C[D[q][i]], ';');
k:=3;
j:=0;
while(k>5) do begin
readln;
readln;
writeln('Жду ваших указаний :');
readln(y1);
writeln('Над каким объектом производится операция ?');
read(y2);
if y1='Выход'
then k:=0;
for i:= 1 to 4 do
if y1=C[i]
then for p:=1 to 3 do
if y2=B[p]
then begin if i=D[q][p]
then begin writeln('Операция прошла успешно'); j:=3; end;
if D[q][p]=8
then begin writeln('Операция прошла успешно'); j:=3; end;
if j<>3
then begin j:=3;writeln('Отказ в выполнении операции. У Вас нет прав для ее осуществления '); end;
end;
if j=0
then writeln('Неправильное имя файла, или команда.');
j:=0;
end;
end.
cHJvZ3JhbSBsYWJhMjsKdXNlcyBjcnQ7CkNvbnN0IEE6YXJyYXlbMS4uM11vZiBzdHJpbmcgPSgn0JjQstCw0L0nLCfQkdC+0YDQuNGBJywn0KHQtdGA0LPQtdC5Jyk7CkNvbnN0IEI6YXJyYXlbMS4uM11vZiBzdHJpbmcgPSgn0KTQsNC50LsxJywn0KTQsNC50LsyJywn0KTQsNC50LszJyk7CkNvbnN0IEM6YXJyYXlbMS4uOF1vZiBzdHJpbmcgPSgn0JfQsNC/0YDQtdGCJywn0J/QtdGA0LXQtNCw0YfQsCDQv9GA0LDQsicsJ9CX0LDQv9C40YHRjCcsCifQl9Cw0L/QuNGB0YwsINCf0LXRgNC10LTQsNGH0LAg0L/RgNCw0LInLCfQp9GC0LXQvdC40LUnLCfQp9GC0LXQvdC40LUsINCf0LXRgNC10LTQsNGH0LAg0L/RgNCw0LInLCfQp9GC0LXQvdC40LUsINCX0LDQv9C40YHRjCcsJ9Cf0L7Qu9C90YvQtSDQv9GA0LDQstCwJyk7CnZhcgppLG4sayxqLHEscDppbnRlZ2VyOwp1LHkxLHkyOiBzdHJpbmc7CkQ6YXJyYXlbMS4uOSwxLi4zXSBvZiBpbnRlZ2VyOwpiZWdpbiAKY2xyc2NyOwpuOj0zOwprOj0zOwpqOj04OwpEWzFdWzFdOj04OyAKRFsxXVsyXTo9ODsKRFsxXVszXTo9ODsgCkRbMl1bMV06PTE7IApEWzJdWzJdOj0xOwpEWzJdWzNdOj0xOyAKRFszXVsxXTo9MzsgCkRbM11bMl06PTE7CkRbM11bM106PTI7CndyaXRlbG4gKCfQn9C+0LvRjNC30L7QstCw0YLQtdC70YwnKTsgcmVhZGxuKHUpOwpmb3IgaTo9MSB0byBuIGRvIAppZiB1ID0gYVtpXSB0aGVuIGJlZ2luIHE6PWk7CiB3cml0ZWxuICgn0JjQtNC10L3RgtC40YTQuNC60LDRhtC40Y8g0L/RgNC+0YjQu9CwINGD0YHQv9C10YjQvdC+LCDQtNC+0LHRgNC+INC/0L7QttCw0LvQvtCy0LDRgtGMINCyINGB0LjRgdGC0LXQvNGDJywgJyAnLGFbcV0pOyBlbmQ7CmlmIHEgPSAwCiAgIHRoZW4gd3JpdGVsbign0J3QtdC/0YDQsNCy0LjQu9GM0L3QvtC1INC40LzRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8uJykKICAgZWxzZSBiZWdpbgogICAgICAgIHdyaXRlbG4oJ9CS0LDRiNC4INC/0YDQsNCy0LA6Jyk7CiAgICAgICAgZW5kOwogICAgICAgIGZvciBpOj0xIHRvIDMgZG8gCiAgICAgICAgICAgd3JpdGVsbihCW2ldLCAnIC0gJywgQ1tEW3FdW2ldXSwgJzsnKTsKICAgICAgICBrOj0zOwogICAgICAgIGo6PTA7CiAgICAgICAgd2hpbGUoaz41KSBkbyBiZWdpbgogICAgICAgIHJlYWRsbjsKICAgICAgICByZWFkbG47CiAgICAgICAgd3JpdGVsbign0JbQtNGDINCy0LDRiNC40YUg0YPQutCw0LfQsNC90LjQuSA6Jyk7CiAgICAgICAgcmVhZGxuKHkxKTsKICAgICAgICB3cml0ZWxuKCfQndCw0LQg0LrQsNC60LjQvCDQvtCx0YrQtdC60YLQvtC8INC/0YDQvtC40LfQstC+0LTQuNGC0YHRjyDQvtC/0LXRgNCw0YbQuNGPID8nKTsKICAgICAgICByZWFkKHkyKTsKICAgICAgICBpZiB5MT0n0JLRi9GF0L7QtCcKICAgICAgICB0aGVuIGs6PTA7CiAgICAgICAgZm9yIGk6PSAxIHRvIDQgZG8KICAgICAgICBpZiB5MT1DW2ldCiAgICAgICAKICAgICAgICB0aGVuIGZvciBwOj0xIHRvIDMgZG8gCiAgICAgICAgICAgICAgaWYgeTI9QltwXQogICAgICAgICAgICAgICAgIHRoZW4gYmVnaW4gaWYgaT1EW3FdW3BdCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGVuIGJlZ2luIHdyaXRlbG4oJ9Ce0L/QtdGA0LDRhtC40Y8g0L/RgNC+0YjQu9CwINGD0YHQv9C10YjQvdC+Jyk7IGo6PTM7IGVuZDsgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIERbcV1bcF09OAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhlbiBiZWdpbiB3cml0ZWxuKCfQntC/0LXRgNCw0YbQuNGPINC/0YDQvtGI0LvQsCDRg9GB0L/QtdGI0L3QvicpOyBqOj0zOyBlbmQ7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBqPD4zCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGVuIGJlZ2luIGo6PTM7d3JpdGVsbign0J7RgtC60LDQtyDQsiDQstGL0L/QvtC70L3QtdC90LjQuCDQvtC/0LXRgNCw0YbQuNC4LiDQoyDQktCw0YEg0L3QtdGCINC/0YDQsNCyINC00LvRjyDQtdC1INC+0YHRg9GJ0LXRgdGC0LLQu9C10L3QuNGPICcpOyBlbmQ7CmVuZDsKaWYgaj0wCnRoZW4gd3JpdGVsbign0J3QtdC/0YDQsNCy0LjQu9GM0L3QvtC1INC40LzRjyDRhNCw0LnQu9CwLCDQuNC70Lgg0LrQvtC80LDQvdC00LAuJyk7Cmo6PTA7IAplbmQ7CmVuZC4=