У нас є друг на імʼя Yaʻqūb, який працює за прилавком у місцевій кулінарії: нарізає, зважує та загортає замовлення для черги голодних покупців, яка щодня стає довшою. Покупці, які чекають, починають плутатися, хто наступний, тож він хоче пронумеровані квитки, за допомогою яких вони могли б відстежувати порядок, у якому приходять.
Щоб покупці почувалися особливими, він не хоче, щоб на квитку був лише номер. Вони отримають належне англійське речення, у якому будуть їхнє імʼя та номер.
Дано імʼя та число. Наше завдання - утворити речення, у якому це імʼя та це число виступають як порядковий числівник. Yaʻqūb розраховує на числа від 1 до 999.
Правила:
"st"
"nd"
"rd"
"th"
Приклади:
"Mary", 1 → "Mary, you are the 1st customer we serve today. Thank you!"
"John", 12 → "John, you are the 12th customer we serve today. Thank you!"
"Dahir", 162 → "Dahir, you are the 162nd customer we serve today. Thank you!"
У цій вправі ми реалізуємо процедуру, яка має виділяти памʼять під рядок тексту (англ. string), який вона повертає. А звільняти цей рядок тексту має той, хто викликає процедуру.
// The procedure will be called like that:
formatted := format("Gianna", 4)
// ...
// and eventually the caller will delete the string
delete(formatted)