Автор работы: Пользователь скрыл имя, 11 Декабря 2011 в 13:26, лабораторная работа
Для корректной работы программного средства необходимо выполнить ряд требований:
    а) исходный код программы должен соответствовать  правилам написания программ на языке  программирования PHP 5.
    б) исходный код программы должен содержаться  в одном файле.
    в)  на компьютере должно быть установлено  приложение GraphViz, оно необходимо для отображения граф-схемы алгоритма. Приложение устанавливается автоматически.
Цели и  задачи
3
Руководство пользователя. Главное меню программы
4
Вкладка “Файл”
4
Вкладка “Обработка”
5
Вкладка “Справка”
5
Панель быстрого доступа
6
Краткие сведения о метрике Мак-Кейба
7
Результаты выполнения программы
8
Список литературы
            
} 
if (!CodeFinish)
switch (Code[curPos])
{
case '(':
int num = 0;
curPos++;
while (!((Code[curPos] == ')') && (num == 0)))
{
if (Code[curPos] == '(')
num++;
if (Code[curPos] == ')')
num--;
if (Code[curPos] == '"')
{
res += '\\';
do
{
                              
                              
}
while (Code[curPos] != '"');
res += '\\';
}
res += Code[curPos];
curPos++;
}
curPos++;
break;
case '$':
res += Code[curPos];
curPos++;
                    while 
(VariableSymbols.Contains(
{
res += Code[curPos];
curPos++;
}
break;
default:
                    if 
(VariableSymbols.Contains(
                        while 
(VariableSymbols.Contains(
{
res += Code[curPos];
curPos++;
}
else
{
res += Code[curPos];
curPos++;
}
break;
            
} 
return res;
        
} 
private void GetNextLine()
{
string Token;
do
Token = GetToken();
while ((Token != ";") && (Token != ""));
            if 
((Token == ";") || Token == "") curPos--; 
        
} 
private void AddIf()
{
string res;
int IfBegin = curPos;
string usl = GetToken();
Graph_.AddBlock(false, "if (" + usl + ")");
Block If = Graph_.curBlock;
IfBegin = curPos;
if ((res = GetToken()) == "{")
GetBlock("}");
else
{
curPos = IfBegin;
GetBlock(";");
}
Graph_.AddBlock(true, "connection");
Block connection = Graph_.curBlock;
int IfEnd = curPos;
Graph_.curBlock = If;
if (GetToken() == "else")
{
if ((res = GetToken()) == "{")
GetBlock("}");
else
{
curPos = IfEnd;
GetBlock(";");
}
                
Graph_.curBlock.NextBlocks.
Graph_.curBlock = connection;
}
else
{
                
Graph_.curBlock.NextBlocks.
Graph_.curBlock = connection;
curPos = IfEnd;
}
        
} 
private void AddWhile()
{
int WhileBegin = curPos;
string usl = GetToken();
Graph_.AddBlock(false, "while (" + usl + ")");
WhileBegin = curPos;
Block While = Graph_.curBlock;
if (GetToken() == "{")
GetBlock("}");
else
{
curPos = WhileBegin;
GetBlock(";");
}
            
Graph_.curBlock.NextBlocks.
Graph_.curBlock = While;
        
} 
private void AddFor()
{
string usl = GetToken();
Graph_.AddBlock(false, "for (" + usl + ")");
int WhileBegin = curPos;
Block While = Graph_.curBlock;
if (GetToken() == "{")
GetBlock("}");
else
{
curPos = WhileBegin;
GetBlock(";");
}
            
Graph_.curBlock.NextBlocks.
Graph_.curBlock = While;
        
} 
private void AddDo()
{
int DoBegin = curPos;
Graph_.AddBlock(true, "do");
Block Do = Graph_.curBlock;
if (GetToken() == "{")
GetBlock("}");
else
{
curPos = DoBegin;
GetBlock(";");
}
GetToken();
string usl = GetToken();
Graph_.AddBlock(false, "while (" + usl + ")");
            
Graph_.curBlock.NextBlocks.
        
} 
private void AddFunction()
{
string FuncName = GetToken();
GetToken();
            
GetToken(); 
Graph Main = Graph_;
Graph_ = new Graph(FuncName);
GetBlock("}");
Информация о работе Анализ программного средства по метрике Мак-Кейба