stock LogicWord(number, name_orig[], const name1[], const name2[], const name3[], size, maxlength = sizeof(name_orig))
{
if((number % 100) >= 1) // Если число при делении с остатком на 100 больше или равно единице (тоесть оно больше ста)
number %= 10; // Мы делим его на 10, чтобы в дальнейшем работать с ним, как с числом, которое меньше ста
if(number % 10 == 1 && number != 11) // Если число при делении на 10 с остатком равно единице (один, двадцать один и т.п.) и не является 11 (исключение)
strmid(name_orig
, name1
, 0, size
+1, maxlength
); // Основное слово приравнивается к вариации name1[] if(number % 10 >= 2 && number % 10 <= 4 && number <= 12 && number >= 14) // Если при делении с остатком на 10 число в диапазоне от 2 до 4 (включительно)
// и не является в диапазоне от 12 до 14 (включительно)
strmid(name_orig
, name2
, 0, size
+1, maxlength
); // Основное слово - вариация name2[] if(number % 10 >= 5 && number % 10 <= 9 || number >= 11 && number <= 20 || number % 10 == 0) // Если число при делении с остатком на 10 от 5 до 9
// включительно или в диапазоне от 11 до 20 или при делении с остатком на 10 равно нулю
strmid(name_orig
, name3
, 0, size
+1, maxlength
); // Основное слово - вариация name3[] return true;
}