#include <iostream>
#include <string>
std::string convertToOrdinal(int number) {
std::string suffix;
// Додаємо відповідний суфікс залежно від останньої цифри
if (number % 100 >= 11 && number % 100 <= 13) {
suffix = "th";
} else {
switch (number % 10) {
case 1: suffix = "st"; break;
case 2: suffix = "nd"; break;
case 3: suffix = "rd"; break;
default: suffix = "th"; break;
}
}
// Повертаємо число разом із суфіксом
return std::to_string(number) + suffix;
}
int main() {
int number;
std::cout << "Введіть десяткове число: ";
std::cin >> number;
std::string ordinal = convertToOrdinal(number);
std::cout << "Відповідний порядковий числівник: " << ordinal << std::endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgoKc3RkOjpzdHJpbmcgY29udmVydFRvT3JkaW5hbChpbnQgbnVtYmVyKSB7CiAgICBzdGQ6OnN0cmluZyBzdWZmaXg7CgogICAgLy8g0JTQvtC00LDRlNC80L4g0LLRltC00L/QvtCy0ZbQtNC90LjQuSDRgdGD0YTRltC60YEg0LfQsNC70LXQttC90L4g0LLRltC0INC+0YHRgtCw0L3QvdGM0L7RlyDRhtC40YTRgNC4CiAgICBpZiAobnVtYmVyICUgMTAwID49IDExICYmIG51bWJlciAlIDEwMCA8PSAxMykgewogICAgICAgIHN1ZmZpeCA9ICJ0aCI7CiAgICB9IGVsc2UgewogICAgICAgIHN3aXRjaCAobnVtYmVyICUgMTApIHsKICAgICAgICAgICAgY2FzZSAxOiBzdWZmaXggPSAic3QiOyBicmVhazsKICAgICAgICAgICAgY2FzZSAyOiBzdWZmaXggPSAibmQiOyBicmVhazsKICAgICAgICAgICAgY2FzZSAzOiBzdWZmaXggPSAicmQiOyBicmVhazsKICAgICAgICAgICAgZGVmYXVsdDogc3VmZml4ID0gInRoIjsgYnJlYWs7CiAgICAgICAgfQogICAgfQoKICAgIC8vINCf0L7QstC10YDRgtCw0ZTQvNC+INGH0LjRgdC70L4g0YDQsNC30L7QvCDRltC3INGB0YPRhNGW0LrRgdC+0LwKICAgIHJldHVybiBzdGQ6OnRvX3N0cmluZyhudW1iZXIpICsgc3VmZml4Owp9CgppbnQgbWFpbigpIHsKICAgIGludCBudW1iZXI7CiAgICBzdGQ6OmNvdXQgPDwgItCS0LLQtdC00ZbRgtGMINC00LXRgdGP0YLQutC+0LLQtSDRh9C40YHQu9C+OiAiOwogICAgc3RkOjpjaW4gPj4gbnVtYmVyOwoKICAgIHN0ZDo6c3RyaW5nIG9yZGluYWwgPSBjb252ZXJ0VG9PcmRpbmFsKG51bWJlcik7CiAgICBzdGQ6OmNvdXQgPDwgItCS0ZbQtNC/0L7QstGW0LTQvdC40Lkg0L/QvtGA0Y/QtNC60L7QstC40Lkg0YfQuNGB0LvRltCy0L3QuNC6OiAiIDw8IG9yZGluYWwgPDwgc3RkOjplbmRsOwoKICAgIHJldHVybiAwOwp9Cg==