Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.03.21;
Скачать: CL | DM;

Вниз

никто не делал лабу   Найти похожие ветки 

 
Nest ©   (2002-02-08 11:27) [0]

Всё нетак сложно, даже просто, но времени совсем нет - на работе сижу, надо отчёт сёдня сдавать , а в обед оттащить лабу на учёбу.
Готовое решение стрёмно просить, но может кто поделится опытом?


 
anod ©   (2002-02-08 11:34) [1]

В смысле со сдвигом по ASCII на 1 символ?


 
wicked ©   (2002-02-08 11:37) [2]

2 Nest ©
имеются модуля шифрования по гост"у delphi+assembler собсного приготовления.... закинуть?...


 
gek   (2002-02-08 11:39) [3]

Ну наверное так примерно
var
ch:char;
str_in,str_out:string;
begin
str_out:="";
for i:=1 to length(str_in) do
begin
ch:=str_in[i];
if ord(ch) = 256 then
ch:=char(ord(1))
else
ch:=char(ord(ch)+1);
str_out:=str_out + ch;
end;
end;


 
Nest ©   (2002-02-08 11:43) [4]

wicked ©
anod ©
Кароче надо:
1)загружаешь в мемо1 файл c текстом "abc"
2)Жмём "кодировать" получаешь в мемо2 текст "bcd"
3)Жмём "раскодировать" получаем в мемо3 "abc"

Пытался так:
procedure TForm1.Button1Click(Sender: TObject);
begin
src:=memo1.text;
coded:="";
for i:=0 to length(src) do
coded:=coded+chr(ord(src[i])+1);
memo2.text:=coded;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
encoded:="";
for i:=0 to length(coded) do
encoded:=encoded+chr(ord(coded[i])-1);
memo3.text:=encoded;
end;

Но получается такая бодяга:
Исходный текст: abc
Закодированный текст: bcd
Разкодированный: я


Как сделать?
(С одним символом получается вроде)


 
gek   (2002-02-08 11:52) [5]

for i:=1 to length(src) do


 
Nest ©   (2002-02-08 12:07) [6]

2gek
Да эту бугу поправил, но всёравно не катит - даже явно пытался указать -
for i:=1 to 5 do

ГоРЮ !...


 
wicked ©   (2002-02-08 12:08) [7]

2 Nest ©
навскидку первый баг - строки индексируются с 1.... только что проверил....


 
wicked ©   (2002-02-08 12:11) [8]

2 Nest ©
странно.... у меня работает....
procedure TForm1.Button1Click(Sender: TObject);
var s, d: string;
i, n: integer;
begin
s := edit1.Text;
d := "";
n := length(s);
for i := 1 to n do
d := d + chr(ord(s[i]) + 1);
Edit2.Text := d;
end;

procedure TForm1.Button2Click(Sender: TObject);
var s, d: string;
i, n: integer;
begin
s := edit2.Text;
d := "";
n := length(s);
for i := 1 to n do
d := d + chr(ord(s[i]) - 1);
Edit1.Text := d;
end;


 
Nest ©   (2002-02-08 12:12) [9]

2wicked ©
ВСЁ!
В этом и было дело!!!!
Теперь работает!
Царапал на скорую руку... Кучу мелких ерроров наделал!
Спасибо!


 
Anatoly Podgoretsky ©   (2002-02-09 00:47) [10]

wicked © (08.02.02 12:11)

а ты попробуй для "эюя"


 
wicked ©   (2002-02-09 13:45) [11]

2 Anatoly Podgoretsky ©
ну не работает.... :) а так как не работает из-за "я" -> #0, то алгоритм имеет только педагогическую ценность... а для того, чтобы реально что-то шифровать - надо хотя бы использовать массив, а не строки....


 
Anatoly Podgoretsky ©   (2002-02-09 18:17) [12]

так я надо превращать в пробел и обратно, идея продемонстрирована в сообщение gek (08.02.02 11:39)



Страницы: 1 вся ветка

Текущий архив: 2002.03.21;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.012 c
1-66836
LazyCat
2002-03-07 18:53
2002.03.21
Шо за фигня?


3-66756
Igor_
2002-02-20 12:50
2002.03.21
Records affected


1-66864
Kettle of delphi
2002-03-05 15:45
2002.03.21
Про перехват системных сообщений...


14-66991
lel
2001-12-03 12:18
2002.03.21
---|Ветка была без названия|---


3-66769
Markov D.
2002-02-21 19:00
2002.03.21
Midas / SocketConnection