Перевести с Delphi на C# маленький блок кода
Формулировка задачи:
Function CodingStr(Str,Key:String):String; Const Letters = ['А'..'я']; Var i,j : Integer; Begin j:=1; For i:=1 To Length(Str) Do If Str[i] In Letters Then Begin Str[i]:=Char(((Ord(Str[i])-Ord('А')+Ord(Key[j])-Ord('0')+1) Mod (Ord('я')-Ord('А')+1))+Ord('А')); Inc(j); If j>Length(Key) Then j:=1; End; Result:=Str; End;
Решение задачи: «Перевести с Delphi на C# маленький блок кода»
textual
Листинг программы
string CodingStr(string s, string key) { var letters = new char[64]; for (int i = 0, j = 'А'; j <= 'я'; i++, j++) letters[i] = (char)j; var charStr = s.ToCharArray(); for (int i = 0, j = 0; i < charStr.Length; i++) { if (!letters.Any(c => charStr[i] == c)) continue; charStr[i] = (char)((charStr[i] - 'А' + key[j] - '0' + 1) % ('я' - 'А' + 1 + 'А')); if (key.Length == ++j) j = 0; } return new String(charStr); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д