Что за операция в коде: char.IsLetter(letter) ? letter - 'A' : 26; ? - C#

Узнай цену своей работы

Формулировка задачи:

Всем здравствуйте! Ребят вот весь код.
using System;
// ReSharper disable AssignNullToNotNullAttribute
// ReSharper disable PossibleNullReferenceException
 
class Solution
{
    static void Main()
    {
        int L = int.Parse(Console.ReadLine());
        int H = int.Parse(Console.ReadLine());
        string Sentence = Console.ReadLine().ToUpper();
       
        for (int i = 0; i < H; i++) {
            string AsciiRow = Console.ReadLine();
            foreach (char letter in Sentence)
            {
                int index = char.IsLetter(letter) ? letter - 'A' : 26;
                Console.Write(AsciiRow.Substring(index*L,L));
            }
            Console.WriteLine();
        }
    }
}
Поясните мне на пальцах что это такое: int index = char.IsLetter(letter) ?

letter - 'A'

: 26; Это тернарная операция ... но что с чаром происходит? Смысл таков что приходят параметры длинны и высоты символа. ansii строки с символами для прорисовки. и сама строка в обычном формате которую надо перевести/нарисовать в консоли.

Решение задачи: «Что за операция в коде: char.IsLetter(letter) ? letter - 'A' : 26; ?»

textual
Листинг программы
A (ASCII: 65) (#0)
B (ASCII: 66) (#1)
C (ASCII: 67) (#2)
D (ASCII: 68) (#3)
E (ASCII: 69) (#4)
F (ASCII: 70) (#5)
G (ASCII: 71) (#6)
H (ASCII: 72) (#7)
I (ASCII: 73) (#8)
J (ASCII: 74) (#9)
K (ASCII: 75) (#10)
L (ASCII: 76) (#11)
M (ASCII: 77) (#12)
N (ASCII: 78) (#13)
O (ASCII: 79) (#14)
P (ASCII: 80) (#15)
Q (ASCII: 81) (#16)
R (ASCII: 82) (#17)
S (ASCII: 83) (#18)
T (ASCII: 84) (#19)
U (ASCII: 85) (#20)
V (ASCII: 86) (#21)
W (ASCII: 87) (#22)
X (ASCII: 88) (#23)
Y (ASCII: 89) (#24)
Z (ASCII: 90) (#25)

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 4 из 5
Похожие ответы