привет!
Например:
10 лет
15 лет
22 года

есть ли встроенные функции которые позволят это сделать?
---
ДипСик после скармливания ему синтаксис-помощника:

```1c
    Функция ПолучитьЛетСПадежом(числолет) Экспорт

    // Формируем параметры предмета исчисления для слова "год"
    параметрыПредмета = "год, года, лет, м";
    // м — мужской род, варианты: "ж" (женский), "с" (средний)

    // Форматная строка (опционально, можно настроить вывод)
    форматнаяСтрока = "НП=Ложь"; // НП — не выводить название предмета ("двенадцать" вместо "двенадцать лет")

    // Получаем правильную форму слова "год"
    строкаЛет = ЧислоПрописью(числолет, форматнаяСтрока, параметрыПредмета);

    // Возвращаем результат в формате "12 лет", "21 год" и т. д.
    возврат Строка(числолет) + " " + строкаЛет;

    КонецФункции

    // Примеры использования:
    Сообщить(ПолучитьЛетСПадежом(1)); // "1 год"
    Сообщить(ПолучитьЛетСПадежом(2)); // "2 года"
    Сообщить(ПолучитьЛетСПадежом(5)); // "5 лет"
    Сообщить(ПолучитьЛетСПадежом(12)); // "12 лет"
    Сообщить(ПолучитьЛетСПадежом(21)); // "21 год"
    Сообщить(ПолучитьЛетСПадежом(101)); // "101 год"
```
---
СтрокаСЧислом
---
Может быть, так:
1. Взять последнюю цифру числа лет ( Цел(ЧислоЛет) % 10)
2. Если последняя цифра 0, 5, 6, 7, 8, 9 - то "лет" ; 0, 5, 6, 7, 8, 9, 10, 15, 100, 105 ...
3. Если последняя цифра 1 и (Цел(ЧислоЛет)%100 < 10 или Цел(ЧислоЛет)%100 > 20 ) то "год" ; 1, 21, 101...
3. Если последняя цифра 1 и 10 < Цел(ЧислоЛет)%100 < 20 - то "лет" ; 11, 111, 211...
4. Если последняя цифра 2, 3, 4 и 10 < Цел(ЧислоЛет)%100 < 20 - то "лет" ; 12, 13, 112, 113...
4. Если последняя цифра 2, 3, 4 и (Цел(ЧислоЛет)%100 < 10 или Цел(ЧислоЛет)%100 > 20 )- то "года" ; 2, 3, 22,23, 102, 122...
---
Слишком запутано.
Ещё в двадцатом веке был такой алгоритм:

Дес = ЧислоЛет % 100;
Ед = Дес % 10;
Если (Дес > 9) И (Дес < 21) Тогда Возврат('лет')
ИначеЕсли Ед = 1 Тогда Возврат('год')
ИначеЕсли (Ед > 1) И (Ед < 5) Тогда Возврат('года')
Иначе Возврат('лет');
---
Давайте поговорим про ножницы. Ножницы. 23 штуки. 23 чего? И сколько? Двадцать три ножниц? Двадцать трое ножниц?
---
Еще про бигуди можно выяснить :)
---
Давайте поговорим про ножницы. Ножницы

Давайте не будем. И про кочерги тоже. И про брюки. И про слово, имеющее в русском языке единственную возможную форму в родительном падеже множественного числа...

Автор темы спросил, как склонять слово "лет" после числа, записанного цифрами.

PS Если мое предложение будет реализовываться в виде алгоритма, там можно оптимизировать вычисления логических функций и закешировать вычисления остатков от деления, что и показано в (10).
---
Он не спрашивал про склонение. Он спрашивал про представление. А это несколько разные сущности.
---
Это не представление года. Это представление возраста/интервала. А не даты.
А это две большие разницы. Так мы скоро затребуем от 1С отдельное представление для десятка яиц.
---
Но в связи с шринкфляцией - для девятка яиц.
---
Я вообще покупаю шесток.
---
Сверчок?
---
Ага, и кручусь-верчусь на нём )))
---
платформенное ЧислоПрописью
---
```1c
    Если Х % 10 = 1 Тогда Год
    ИначеЕсли Х % 10 МЕЖДУ 2 И 4 Тогда Года
    Иначе Лет
```

Про число прописью: https://www.vdgb.ru/blog/chislo-propisyu-podrobnoe-opisanie/
---
ДипСик после скармливания ему синтаксис-помощника:

```1c
    Функция ПолучитьЛетСПадежом(числолет) Экспорт

    // Формируем параметры предмета исчисления для слова "год"
    параметрыПредмета = "год, года, лет, м";
    // м — мужской род, варианты: "ж" (женский), "с" (средний)

    // Форматная строка (опционально, можно настроить вывод)
    форматнаяСтрока = "НП=Ложь"; // НП — не выводить название предмета ("двенадцать" вместо "двенадцать лет")

    // Получаем правильную форму слова "год"
    строкаЛет = ЧислоПрописью(числолет, форматнаяСтрока, параметрыПредмета);

    // Возвращаем результат в формате "12 лет", "21 год" и т. д.
    возврат Строка(числолет) + " " + строкаЛет;

    КонецФункции

    // Примеры использования:
    Сообщить(ПолучитьЛетСПадежом(1)); // "1 год"
    Сообщить(ПолучитьЛетСПадежом(2)); // "2 года"
    Сообщить(ПолучитьЛетСПадежом(5)); // "5 лет"
    Сообщить(ПолучитьЛетСПадежом(12)); // "12 лет"
    Сообщить(ПолучитьЛетСПадежом(21)); // "21 год"
    Сообщить(ПолучитьЛетСПадежом(101)); // "101 год"
```
---
А какой был промт для Дипсика?
---
А что там с промптами? Какой промпт у топикастера?
Вся суть промпта - это правильно заданный вопрос. Я примерно так спрашивал: <<напиши на 1С 8.3 программу, которая выведет число лет и дальше "год", "года", "лет". Например, 10 лет, 21 год, 54 года. Используй функцию "ЧислоПрописью">>. Ну и потом из СП статью про "ЧислоПрописью" и типа поправь с учетом описания.

ИИ - инструмент. Не будет они, как и программист, с первого раза сразу все правильно делать. Это надо понять и принять.
---
Как скармливали? Векторная бд?
---
В вебинтерфейсе дипсика просто копипаста. Чета вы все каких-то чуд ищите, при том все просто.

ЗЫ: и да, программа-то не особо работает, ибо не умеет функция строки прописью такого )))
ЗЫЗЫ: а вот другая программа, которую он с первого разу написал без этой строки прописями, была самый раз.
---
ибо не умеет функция строкиЛокализацию не указали
```1c
    ПараметрыПредмета = "год, года, лет, м, , , , , 0";
    ФорматнаяСтрока = "Л = ru_RU";
```
---
Она и без локализации это делает, просто она не может числительное не выводить, а только "года", "год", "лет". Или "сто лет", или "сто", а вот просто "лет" - нет.
Или может?
---
Я в теме, чудес не ищу, интересен опыт комрадов. Делал векторную базу с кучей книг по разработке 1С, запрос отправляется в openai далее из openai сканируется векторная база с данными книг, далее отправляется для обработки обратно в openai при такой реализации ответы были 9 из 10 правильными, единственное стоимость и целесообразность всего этого заканчивается там где начинается дообучение, имхо нужна своя собственная модель на очень дорогом и мощном оборудовании.