Вывести строку — словесное описание указанного возраста - C#

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

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

Дано целое число в диапазоне 20-69 , определяющее возраст (в годах). Вывести строку - словесное описание указанного возраста, обеспечив правильное согласование числа со словам "год" , например: 20-" двадцать лет", 32-"тридцать два года", 41- "сорок один год"

Решение задачи: «Вывести строку — словесное описание указанного возраста»

textual
Листинг программы
using System;
 
namespace ConsoleApplication161
{
    class Program
    {
        static string[] decs = new[] {"двадцать", "тридцать", "сорок", "пятьдесят", "шестьдесят"};
        static string[] sings = new[] { "", "один", "два", "три", "четыре", "пять", "шесть", "семь", "восемь", "девять" };
        static string[] years = new[] { "год", "года", "лет" };
 
        static void Main(string[] args)
        {
            while (true)
            {
                Console.Write("Enter age: ");
                var s = int.Parse(Console.ReadLine());
                Console.WriteLine(AgeToString(s));
                Console.WriteLine();
            }
        }
 
        private static string AgeToString(int age)
        {
            var res = NumberToString(age);
            switch(age % 10 )
            {
                case 1: return res + " " + years[0];
                case 2:
                case 3:
                case 4: return res + " " + years[1];
                default: return res + " " + years[2];
            }
        }
 
        private static string NumberToString(int age)
        {
            var iDec = age/10 - 2;
            var iSing = age%10;
 
            return (decs[iDec] + " " + sings[iSing]).Trim();
        }
    }
}

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


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

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

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