Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
Salabim
0 / 0 / 1
Регистрация: 27.09.2011
Сообщений: 75
1

Программа кодировки сообщения

27.09.2011, 14:44. Просмотров 1022. Ответов 13
Метки нет (Все метки)

Написал программу, которая (по идее) при вводе начального текста в текстовое поле 1 и ключа в текстовое поле 2 выдает нечитаемый код, понять который может только человек знающий ключ. Написать написал, но ничего не выходит, во втором поле ничего не появляется, помогите исправить ошибки
0
Миниатюры
Программа кодировки сообщения   Программа кодировки сообщения  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.09.2011, 14:44
Ответы с готовыми решениями:

Кодировки
Парни я создаю (пишу) ICQ клиент ... вообщем отправка сообщений нормально...

Изменение кодировки
Необходимо, чтобы переменная st была именно формата ShortString. Но функция...

Автораспознавание кодировки
Здравствуйте. Хотелось бы в своей программе реализовать поддержку для...

Кодировки в delphi
Народ, значит считываю я содержание файла с сервера, но при выводе в delphi у...

Bопрос про кодировки
символы #13 #10 отображаются в виде каких то палочек или квадратиков дельфи...

13
deathNC
1892 / 1005 / 123
Регистрация: 08.12.2009
Сообщений: 2,792
Записей в блоге: 2
27.09.2011, 14:54 2
Salabim, код обычно копируют прямо в сообщение.
Копируй его сюда, и, не забудь про теги форматирования кода (на тулбаре редактора сообщений).
1
Salabim
0 / 0 / 1
Регистрация: 27.09.2011
Сообщений: 75
27.09.2011, 15:12  [ТС] 3
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
procedure TForm1.BitBtn1Click(Sender: TObject);
Var s, xxx, pass: String;
    i, j, h, b ,c ,d: Integer;
begin
Memo2.Text:='';
s:=Memo1.Text;
i:=Length(s);
pass:=Edit1.Text;
j:=Length(pass);
h:=round(i/j);
for b:=1 to h do
pass:=pass+pass;
pass:=copy(pass, 1, i);
For b:=1 to i do;
Begin
if (ord(s[b])+ord(pass[b]))>255 then
Memo2.Text:=Memo2.Text+chr(ord(s[b])+ord(pass[b])-255)
else
Memo2.Text:=Memo2.Text+chr(ord(s[b])+ord(pass[b]));
end;
end;
Главная часть программы-кодирование сообщения.
0
linegel
1 / 1 / 0
Регистрация: 27.09.2011
Сообщений: 6
27.09.2011, 15:25 4
Это же урок Антона Макрушина))) Попробуйте для начала просто сверить свой код, с кодом показанным в видеоуроке
1
Salabim
0 / 0 / 1
Регистрация: 27.09.2011
Сообщений: 75
27.09.2011, 15:33  [ТС] 5
Вот его код, выше приведен мой, отличий я не нашел. Блин, может у него рука Бога, либо я не прописал в Uses что-то...
0
Миниатюры
Программа кодировки сообщения  
Salabim
0 / 0 / 1
Регистрация: 27.09.2011
Сообщений: 75
27.09.2011, 18:36  [ТС] 6
Не могу понять, все точь в точь как в уроке, а ничего не пашет... Помогите разобраться. Вот что пишет, когда ввожу что то в текстовое поле 1 и 2...
0
Миниатюры
Программа кодировки сообщения  
Salabim
0 / 0 / 1
Регистрация: 27.09.2011
Сообщений: 75
27.09.2011, 18:54  [ТС] 7
Ошибка на фоне кода программы
0
deathNC
1892 / 1005 / 123
Регистрация: 08.12.2009
Сообщений: 2,792
Записей в блоге: 2
27.09.2011, 18:56 8
Щас попробую тебе помочь...

Не по теме:

а то уж целый день ждёшь... :D

0
Salabim
0 / 0 / 1
Регистрация: 27.09.2011
Сообщений: 75
27.09.2011, 19:00  [ТС] 9
Цитата Сообщение от deathNC Посмотреть сообщение
Щас попробую тебе помочь...

Не по теме:

а то уж целый день ждёшь... :D

Ну я не первый целый день жду
0
deathNC
1892 / 1005 / 123
Регистрация: 08.12.2009
Сообщений: 2,792
Записей в блоге: 2
27.09.2011, 19:08 10
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
var
  s, xxx, pass: String;
  i, j, h, b ,c ,d: Integer;
begin
  Memo2.Text := '';
  s := Memo1.Text;
  i := Length(s);
  pass := Edit1.Text;
  j := Length(pass);
  h := round(i / j);
  for b:=1 to h do
    pass:=pass+pass;
  pass := copy(pass, 1, i);
  for b:=1 to i do // У ТЕБЯ ТУТ ТОЧКА С ЗАПЯТОЙ БЫЛА ! ! ! ! ! ! ! !
    begin
      If (ord(s[b]) + ord(pass[b])) > 255 then
        Memo2.Text := Memo2.Text + chr(ord(s[b]) + ord(pass[b]) - 255)
      else
        Memo2.Text := Memo2.Text + chr(ord(s[b]) + ord(pass[b]));
    end;
end;
И из-за этой точки с запятой в цикле ничего не происходило... сам глянь на свой код
0
AndyZorg
Заблокирован
27.09.2011, 19:08 11
Все просто. В приведенном Вам коде - строка 14 - не нужна ";"... Очепятка
0
deathNC
1892 / 1005 / 123
Регистрация: 08.12.2009
Сообщений: 2,792
Записей в блоге: 2
27.09.2011, 19:09 12
И советую код форматировать. Делать отступы, хотя бы, как у меня. Понятнее ведь после этого код становится
0
Salabim
0 / 0 / 1
Регистрация: 27.09.2011
Сообщений: 75
27.09.2011, 19:14  [ТС] 13
Блин... Все гениальное - просто, спасибо!
0
deathNC
1892 / 1005 / 123
Регистрация: 08.12.2009
Сообщений: 2,792
Записей в блоге: 2
27.09.2011, 19:20 14
Salabim, ничего. Бывает!

Не по теме:

Тоже иногда напишу километровый код за 10 минут, а потом сутками ищу, где я чего не дописал... :rofl:

0
27.09.2011, 19:20
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.09.2011, 19:20

Смена кодировки текста
Здравствуйте. Прошу подсказать, можно ли менять кодировку текста (в RichEdit,...

Кодировки... зло! Хелп.
Вобщем нуно мне пошитать одно мат. виражение.(я ведь лентяй ручками некатит)...

Delphi. Автоопределение кодировки
Добрый вечер!!! помогите разработать на Delphi "Текстовый редактор" с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru