Форум: "Начинающим";
Текущий архив: 2008.04.13;
Скачать: [xml.tar.bz2];
ВнизПрограммный анализатор Найти похожие ветки
← →
Deled (2008-03-19 14:43) [0]Доброго времени суток всем! У меня такая проблема...мне достался курсач по интел.системам на тему "программный анализатор"..т.е.нужно написать прогу которая будет отличать программный текст друг от друга и говорить автора(заранее внесенного в б.д.) а если автора не оказалось,то надо добавить его в базу со своим листингом программы..вот..вопрос : какие критерии отличают авторство? На что мне смотреть в первую очередь. Спасибо
← →
Johnmen © (2008-03-19 14:46) [1]
> какие критерии отличают авторство?
Почерк во всем своем многообразии. Ну если нет прямой подписи...
← →
Deled (2008-03-19 14:47) [2]А может есть прототипы?..
← →
ANB (2008-03-19 14:47) [3]
CREATE OR REPLACE FUNCTION CheckExistObespCont(
iCalcDate IN DATE,
iContNum IN VARCHAR2,
iGuarCode IN NUMBER)
RETURN NUMBER IS
tSum NUMBER;
BEGIN
SELECT NVL(SUM(DECODE(TypeOper, 0, SumOper, -SumOper)), 0)
INTO tSum
FROM GuarCrOper
WHERE TypeCont = 0 AND
GuarNum IN (SELECT /*+ index_asc(GUARCRED GuarCred2)*/
OperNum
FROM GuarCred
WHERE TypeNum = 0 AND ContNum = iContNum AND GuarCode = iGuarCode AND Status > 0) AND
DateOper <= iCalcDate;
IF tSum > 0.005 THEN
RETURN 0;
END IF;
SELECT /*+ index_asc(CrGuarOper CGuarOp1)*/
NVL(SUM(DECODE(TypeOper, 0, SumOper, -SumOper)), 0)
INTO tSum
FROM CrGuarOper
WHERE GuarNum IN (SELECT /*+ index_asc(CrGuarCont CGuarC2)*/
C.GuarNum
FROM CrGuarCont C
WHERE C.GuarCode = iGuarCode AND
EXISTS( SELECT /*+ index_asc(CrGuarDstr CGuarD1)*/
CrNum
FROM CrGuarDstr
WHERE GuarNum = C.GuarNum AND
DateGuar IN (SELECT /*+ INDEX_ASC(CrGuarDstr CGuarD1)*/
MAX(DateGuar)
FROM CrGuarDstr
WHERE GuarNum = C.GuarNum AND DateGuar <= iCalcDate) AND
TypeNum = 1 AND CrNum = iContNum AND ShareGuar > 0.000005)) AND
DateOper <= iCalcDate;
IF tSum > 0.005 THEN
RETURN 0;
END IF;
RETURN 1;
EXCEPTION
WHEN OTHERS THEN
--manager.putMessage("Ошибка выполнения CheckExistObespCont:"||SQLERRM);
RETURN -1;
END CheckExistObespCont;
/
Определи, плз, автора по этому программному тексту. :)
← →
Deled (2008-03-19 14:50) [4]Ну например синтаксис,верхнии нижний регистры, их процентое соотн. Я например всегда пиши в нижнем,меня легко найти.
← →
Deled (2008-03-19 14:53) [5]Должна быть база даных,с которой нужно сопоставлять код...а по каким критериям..фантазия не работает чет..
← →
Deled (2008-03-19 14:53) [6]Должна быть база даных,с которой нужно сопоставлять код...а по каким критериям..фантазия не работает чет..
← →
Johnmen © (2008-03-19 14:53) [7]
> Определи, плз, автора по этому программному тексту. :)
Легко:
- выравнивание предикатов SELECT
- сдвиг на 2 позиции для "вложенных" выражений
- отделение коммента одним пробелом
- ...
следовательно - это ANB.
Вот в этом и суть.
← →
Игорь Шевченко © (2008-03-19 14:53) [8]Хороший курсач. Полезный.
← →
ANB (2008-03-19 15:00) [9]
> следовательно - это ANB.
Обломись. Это вообще другой отдел писал. Я даже не знаю - чего она делает. Просто одна из самых коротких хранимок.
Плюс я завсегда пишу в нижнем регистре и ставлю коммент в начале процедуры - что это я писал.
ИМХО, курсач то полезный, но если на фирме есть стандарт программирования, то все пишут очень похоже и отличить авторство мона только если его явно указали.
← →
Johnmen © (2008-03-19 15:04) [10]
> Обломись. Это вообще другой отдел писал.
Значит ты не понял сути.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.04.13;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.007 c