Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Lopatka
0 / 0 / 0
Регистрация: 27.11.2011
Сообщений: 9
#1

перевести из Pascal в С++ - C++

28.11.2011, 22:20. Просмотров 272. Ответов 0
Метки нет (Все метки)

Помогите пожалуйста перевести код программы с языка паскаль на С++


Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
program Dostup;
uses crt;
type TRights=set of (RRead,RWrite,RGrant);
const FullRights: TRights=[RRead,RWrite,RGrant];
MaxObj=5;
MaxUsers=3;
var Users: array [1..MaxUsers] of string[20];
UserRights: array [1..MaxObj,1..3] of TRights;
i,j,CurrUser: byte;
SCommand: string[20];
tmpRight: TRights;
 
begin
clrscr;
 
Users[1]:='Ivan';
Users[2]:='Sergey';
Users[3]:='Boris';
randomize;
for i:=1 to MaxObj do begin
UserRights[i,1]:=FullRights;
for j:=2 to MaxUsers do begin
UserRights[i,j]:=[];
if random(2)=1 then UserRights[i,j]:=UserRights[i,j]+[RRead];
if random(2)=1 then UserRights[i,j]:=UserRights[i,j]+[RWrite];
if random(2)=1 then UserRights[i,j]:=UserRights[i,j]+[RGrant];
end;
end;
CurrUser:=0;
repeat
write('User: ');
readln(SCommand);
if SCommand='quit' then break;
for i:=1 to MaxUsers do
if Users[i]=SCommand then begin
CurrUser:=i;
break;
end;
if CurrUser=0 then
writeln('nepravilnoe imja polzovatelja')
else begin
for i:=1 to MaxObj do begin
write('object ',i,': ');
if UserRights[i,CurrUser]=[] then
write('zapret')
else if UserRights[i,CurrUser]=FullRights then
write('polnie prava')
else begin
if RRead in UserRights[i,CurrUser] then write('chtenie, ');
if RWrite in UserRights[i,CurrUser] then write('zapic, ');
if RGrant in UserRights[i,CurrUser] then write('peredacha, ');
GotoXY(WhereX-2,WhereY);
write(' ');
end;
writeln;
end;
repeat
write('zhdu vashix ukazani >');
readln(SCommand);
if SCommand='quit' then break
else if (SCommand='read') or (SCommand='write') or (SCommand='grant') then begin
write('nad kakim objectom proizvoditcja operacija? ');
readln(j);
if j>MaxObj then writeln('net takogo objecta') else
 
begin
 
if SCommand='read' then
if RRead in UserRights[j,CurrUser] then
writeln('operacija proshla uspeshno') else writeln('otkaz.net prav');
 
 
if SCommand='write' then
if RWrite in UserRights[j,CurrUser] then
writeln('operacija proshla uspeshno') else writeln('otkaz.net prav');
 
if SCommand='grant' then
if RGrant in UserRights[j,CurrUser] then begin
write('kakoe pravo peredaetsa? ');
 
readln(SCommand);
if (SCommand='read') or (SCommand='write') or (SCommand='grant') then begin
if SCommand='read' then tmpRight:=[RRead] else
if SCommand='write' then tmpRight:=[RWrite] else tmpRight:=[RGrant];
write('kakomu polzovatelju peredaetsa pravo? ');
readln(SCommand);
 
i:=1;
while i<=MaxUsers do begin
if Users[i]=SCommand then break;
inc(i);
end;
 
if i>MaxUsers then
writeln('Нnepravilnoe imja polzovatela')
else begin
UserRights[j,i]:=UserRights[j,i]+tmpRight;
end;
end else
writeln('Нnepravilno zadan vid prav');
end else writeln('=otkaz.net prav');
end;
end
 else
writeln('=nevern komanda');
until false;
CurrUser:=0;
end;
until false;
 
writeln('=poka');
end.
 Комментарий модератора 
Используйте теги форматирования кода!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.11.2011, 22:20     перевести из Pascal в С++
Посмотрите здесь:

Перевести c Pascal в C++ - C++
Помогите перевести в Си++ uses crt; var st:string; k,i:integer;f:boolean; begin clrscr; write('-&gt; '); readln(st);

Перевести из PASCAL в С++ - C++
переведите пожалуйста Var f:text; s,s1:string; i:byte; Begin Assign(f,'D:\in.txt');Reset(f); While not...

Перевести из Pascal на C++ - C++
Var n,p1,p2,i,k,j:integer; Begin write('Введите N: ');readln(n); For i:=n-1 downto 2 do Begin k:=0; For...

Перевести с Pascal на С++ - C++
Нужно перевести начало, хотяб до процедур из Pascal на С++ Я застрял на пункте x:array of pp; и не могу понять, как это в С++ прописать...

Перевести с Pascal на C++ - C++
Здравствуйте! Помогите пожалуйста перевести вот эти программы с языка Pascal на C++ Сам я очень плохо знаю C++ поэтому был бы крайне...

Перевести с Pascal на C++ - C++
Здравствуйте! Помогите пожалуйста перевести вот эти программы с языка Pascal на C++ Сам я очень плохо знаю C++ поэтому был бы крайне...

Перевести с Pascal на C++ - C++
Каково содержание задачи? var a:array of integer; i,j,k,l,q,w,e:integer; begin // Randomize; for i:=1 to 10 do begin...

перевести с Pascal на С++ - C++
переведите пожалуйста на С++ uses crt; var a,s,x:real; i:integer; eps:real; function fct(n:integer): real; var f: real;...

Перевести из Pascal в С++ - C++
Заранее благодарен var s, a, x :real;i,j, fac: integer; begin cls; readln(x); begin for j:=1 to 15 do fac:=fac*(j*2+1); ...

Перевести с pascal на с++ - C++
uses crt; var i_put,o_put:string; i,s_ch,n:byte; flag:boolean; Begin ClrScr; writeln('Vvedite stroku:'); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru