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

Код в Delphi перевести в C++, может кто в силах - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Дана действительная квадратная матрица порядка n http://www.cyberforum.ru/cpp-beginners/thread375190.html
дана действительная квадратная матрица порядка n. Построить последовательность из нулей и единиц {b1,…bn}, где bi = 1, если элементы i-й строки матрицы образуют возрастающую последовательность и bi = 0 в противном случае.
C++ Указатели Вопрос об Указателях. Я нач. прогер прошу помочь. Тут написано так : "Пусть p1-указатель на int переменную с текущим значением 2000(т.e p1 содержит 2000). после выполнения (в 32 разряд системе) выражения p1++; Содержимое переменной-указателя p1 станет равным 2004 а не 2001!" . Я вот что-то сделал и не могу понять в чём дело.(у меня p1 это p3 =))) ) #include<iostream> using namespace std;... http://www.cyberforum.ru/cpp-beginners/thread375183.html
error LNK1120 C++
#include "stdafx.h" #include <iostream> #include <conio.h> #include <vector> using namespace std; const int n=3; int s=2; int k=0; int p=0; int f=k;
class выводящий эллементы другого класса... C++
Сделать класс GROUP_OBJECT который будит выводить эллементы других классов на экран... помогите доделать один класс... #include <iostream> #include <string.h> #include <vector> using namespace std; class ELLEMENTS{ // Базовый класс...
C++ Проверить, являются ли данные три числа взаимно простыми http://www.cyberforum.ru/cpp-beginners/thread375170.html
1. Протабулируйте функции. Отрезок и шаг вводятся с клавиатуры: e^-x -x^3 2. Проверить, являются ли данные три числа взаимно простыми
C++ прямоугольная матрица. нужна помощь Дана прямоугольная матрица. Найти строку с наибольшей и наименьшей суммой элементов. Вывести на печать найденные строки и суммы их элементов подробнее

Показать сообщение отдельно
StyxVX
0 / 0 / 0
Регистрация: 15.12.2010
Сообщений: 8

Код в Delphi перевести в C++, может кто в силах - C++

30.10.2011, 22:06. Просмотров 264. Ответов 0
Метки (Все метки)

собственно код:
Delphi
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
var i,j,User,o,u:integer;
    DAC:array [1..3,1..3] of byte;
    user_str,command:string;
 
function test_bit(a:integer;b:byte):boolean;
{Test of Rights; 1 - grant, 2 - write, 3 - read}
var i,c:integer;
begin
 c:=a;
 for i:=1 to b-1 do c:=c div 2;
 if c mod 2=1 then test_bit:=true else  test_bit:=false;
end;
 
procedure print_rights(User:integer);
var j:integer;
begin
 for j:=1 to 3 do {Objects}
 begin
  write('Object ',j);
  if test_bit(DAC[User,j],1) then write(' grant');
  if test_bit(DAC[User,j],2) then write(' write');
  if test_bit(DAC[User,j],3) then write(' read');
  if (not test_bit(DAC[User,j],1)) and (not test_bit(DAC[User,j],2))
     and (not test_bit(DAC[User,j],3)) then write(' not rights');
  writeln;
 end;
end;
 
begin
 {Random fill discrete access control matrix}
 randomize;
 for i:=2 to 3 do
  for j:=1 to 3 do
   DAC[i,j]:=random(8);
 for j:=1 to 3 do DAC[1,j]:=7;
 
 {print DAC}
 for i:=1 to 3 do
 begin
  for j:=1 to 3 do write(DAC[i,j],' ');
  writeln;
 end;
 
 {modelling}
 repeat
  {Identification}
  writeln('User:');
  readln(User_str);
  if User_str='Administrator' then User:=1
     else if User_str='User1' then User:=2
          else if User_str='User2' then User:=3
               else if User_str='exit' then break
                    else begin writeln('Not registred user'); continue; end;
  print_rights(User); {print user's rights}
 
  repeat {user commands}
   write('command>');
   readln(command);
   if command='exit' then break;
   if command<>'grant' then {Not grant command}
   begin
    write('At what object?');readln(o);
    if (o>3) or (o<1) then begin writeln('Object not exist');continue;end;
    if (command='read') and (test_bit(DAC[User,o],3)) then writeln('Read successfully');
    if (command='write') and (test_bit(DAC[User,o],2)) then writeln('Write successfully');
    if (command='read') and (not test_bit(DAC[User,o],3)) then writeln('Read denied');
    if (command='write') and (not test_bit(DAC[User,o],2)) then writeln('Write denied');
   end
   else begin {grant command}
         write('from what object? ');readln(o);
         if (o>3) or (o<1) then begin writeln('Object not exist');continue;end;
         if not test_bit(DAC[User,o],1) then begin writeln('grant denied');break;end;
         write('to what user? ');readln(u);
         if (u>3) or (u<1) then begin writeln('User not exist');continue;end;
         write('what right? ');readln(command);
         if (command='read') and (test_bit(DAC[User,o],3)) then begin if not test_bit(DAC[u,o],3) then
                             DAC[u,o]:=DAC[u,o]+4 end
            else if (command='write') and (test_bit(DAC[User,o],2)) then begin if not test_bit(DAC[u,o],2) then
                             DAC[u,o]:=DAC[u,o]+2 end
              else writeln('You dont have right');
        end;
  until (command='exit');
 until false;
end.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru