Шифрование и дешифрование!!!
загогулина не простая:
данные над которыми мне необходимо работать шифранули вот таким не хитрым методом:
FUNCTION CRIPT
PARAMETER OUTG
OOO = ''
FOR NI = 1 TO LEN(OUTG)
OOO = OOO+CHR(249-ASC(SUBSTR(OUTG,NI)))
ENDFOR
не знаю что это за язык, но по сути все просто - делают логический сдвиг, потом берут код клавиши.
мне надо сделать процесс обратный (тоесть расшифровать), на си в билдере, только замутить не получается
начал типа так:
String ooo =0;
String chet_from_prov=0;
chet_from_prov=DB_chet_prov->Field->AsString; //счет первого поля табл prov
while (!Table1->Eof)
for (i==0; i< sizeOf(chet_from_prov); i++)
// и вот тут то эти закодычные преобразования (((((((((
ASC(SUBSTR(OUTG,NI)) - берется ASCII-значение этого символа
249-ASC(SUBSTR(OUTG,NI)) - вычитается из 249
CHR(249-ASC(SUBSTR(OUTG,NI))) - преобразуется в символ и добавляется в выходную строку.
ASC(SUBSTR(OUTG,NI)) - берется ASCII-значение этого символа
249-ASC(SUBSTR(OUTG,NI)) - вычитается из 249
CHR(249-ASC(SUBSTR(OUTG,NI))) - преобразуется в символ и добавляется в выходную строку.
что то билдер ругается на неидентифицированные функции ([C++ Error] Unit1.cpp(31): E2268 Call to undefined function 'ASC')
может надо библиотеку некую подключить????
может надо библиотеку некую подключить????
и к тому же это для классического досовского си, в билдере это все засунуто в классы и методы, но за логику спасибо, буду пробывать
Сами то понимаете какой бред пишите? )
сущьность понимаю, а описал неправильно, ничего удивительного, типичный самоучка :cool:
нет, вряд ли понимаете.
Вы понимаете, что Вам достаточно этим алгоритом данные зашифровать еще раз, чтобы получить исходный текст?
Вы понимате, что в билдере есть ХЕЛП и там легко можно узнать, что функции ASC там нет в принципе?
Вы понимаете, что Си - он и в Африке Си, независимо от операционной системы?
int d=text1.Length();
char symb1;
int i=1, ascii, diff;
while (i<=d)
{
symb1=text1;
ascii = symb1;
diff=249-ascii;
symb2 = (char)diff;
text2+=symb2;
i++;
}
//выводим text2
Вы понимаете, что Вам достаточно этим алгоритом данные зашифровать еще раз, чтобы получить исходный текст?
Вы понимате, что в билдере есть ХЕЛП и там легко можно узнать, что функции ASC там нет в принципе?
Вы понимаете, что Си - он и в Африке Си, независимо от операционной системы?
1) этого не понимаю, тоесть вы хотите сказать мне просто можно еще раз данные этим же алгоритмом зашифровать и получу не зашифрованный код, тот что мне нужен???
2) Так зачем писать функцию которой в билдере нет
3) я имею в виду гранично разные версии одного и того же продукта
2. Вам написали последовательность действий, а не готовый код
3. Во первых, Си и Си++Билдер - разные вещи. А во вторых, это не для "классического досовского си", а см.пункт 2.
2. Вам написали последовательность действий, а не готовый код
3. Во первых, Си и Си++Билдер - разные вещи. А во вторых, это не для "классического досовского си", а см.пункт 2.
Hrew ну ты зверь))))))))))
мусолил мусолил твой код - наконец то он загачил))))))
ВСЕМ спасибо за помощь и участие, темма закрыта :o