Тема: Цикл букв
Показать сообщение отдельно
  #2  
Старый 15.03.2021, 17:32
denzenit denzenit вне форума
Прохожий
 
Регистрация: 16.12.2020
Сообщения: 11
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Пока в голову пришла только функция
Код:
procedure TForm1.btn1Click(Sender: TObject);
var
  word, word1: string;
  j: integer;
  strok: string;
begin
  word := 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
  j := StrToInt(Ed1.Text);
  if j>26 then
    begin
     if (j mod 26) = 0 then
     begin
      strok := copy(word,j div 27,1) + copy(word,26,1);
     end
     else
     begin
       strok := copy(word,j div 27,1) + copy(word,j mod 26,1);
     end;
    end
  else
    begin
      strok := copy(word,j,1);
    end;
    showmessage(strok);
 end;

Но есть в ней один недостаток. Если уж J = 26, то мне выдаёт Z
Так же и если J=52, то выдаст AZ, должно BA. J=78 Выдаст BZ, Хотя должно CA.

Как с этим бороться - я не представляю да и непонятно как загуглить, хотя уверен, что такой вопрос точно уже задавали.
Ответить с цитированием