Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.05.2009, 23:13   #1
Misty
 
Регистрация: 24.05.2009
Сообщений: 4
Вопрос Delphi массивы

Помогите найти ошибку в коде?

Код:
var
  s:array[1..35] of char=
  ('я','а', 'б', 'в' ,'г', 'д', 'е', 'ё', 'ж',
   'з', 'и' ,'й', 'к', 'л', 'м', 'н', 'о', 'п', 'р',
    'с' ,'т', 'у', 'ф', 'х', 'ц', 'ч', 'ш', 'щ', 'ъ', 'ы', 'ь', 'э', 'ю', 'я','а');

procedure TForm1.Button1Click(Sender: TObject);
var
a,s:string;
i,j:integer;

begin
a:=Edit1.text;
 for i:=1 to length(s) do
   for j:=34 downto 1 do begin

 if  s[i]=a[j] then begin
        s[i]:=a[j+1] ;

        end;
  end;
end;
Задача заключалась в том, чтобы зашифровать текст методом замены каждой буквы на последующую в алфавите ('я' заменяется на 'а')

Последний раз редактировалось Stilet; 25.05.2009 в 09:06.
Misty вне форума Ответить с цитированием
Старый 25.05.2009, 00:21   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Вы чуточку перемудрили
Попробуйте вот так:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
a,sa:string;
i,j:integer;
begin
sa:='';
a:=Edit1.text;//исходный
for i:=1 to length(a) do
begin
for j:=34 downto 1 do
begin
if a[i]=s[j] then
sa:=sa+s[j+1] ;
end;
end;
Edit2.Text:=sa;//"зашифрованный"
end;
mihali4 вне форума Ответить с цитированием
Старый 25.05.2009, 07:51   #3
Misty
 
Регистрация: 24.05.2009
Сообщений: 4
По умолчанию

работает!!!!!!!!!! =))))

только вот проблема... мне нужно зашифровать текст, а не одно слово..

если ввести какую-нибудь фразу, он не считывает пробелы.. и получается всё сплошняком

всё) вроде бы разобралась))

дописала к массиву ещё 5 пунктиков..

(..' ',',','.','!','?');

и сделала так

Код:
for j:=36 to 40 do
  if a[i]=s[j] then
  sa:=sa+s[j];
вроде покатит)))

спасибо за помощь!!!!!!!!!!

Последний раз редактировалось Stilet; 25.05.2009 в 09:07.
Misty вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Массивы (Delphi) 777UFO777 Помощь студентам 4 19.01.2010 16:51
Массивы. Delphi gree Помощь студентам 10 11.05.2009 22:11
Массивы Delphi Tesa Помощь студентам 1 06.10.2008 22:33
Массивы Delphi forumu Помощь студентам 2 11.01.2008 10:07