1. C# / Говнокод #22666

    −124

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    static void Main(string[] args)
            {
                string[] numsTo9 = { "", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" };
                string[] numsTo19 = { "ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen" };
                string[] klorNums = { "", "", "twenty", "thirty", "fourty", "fifty", "sixty", "seventy", "eigthty", "ninety" };
                string[] bignums = { "", "", "", "hundred", "thousand", "thousand", "million" };
    
                string numStr = Console.ReadLine();
                string result = "";
                int number = Int32.Parse(numStr);
                int length = numStr.Length;
                int[] numsArr = new int[length];
    
                for (int i = 0; i < length; i++)
                {
                    if (i == 0)
                        numsArr[i] = number / (int)Math.Pow(10, length - (i + 1));
                    if (i == length - 1)
                        numsArr[i] = number % 10;
                    else
                        numsArr[i] = (number / (int)Math.Pow(10, length - (i + 1))) % 10;
                }
    
    Говно начинается тут
    
                result = (length == 3 ? numsArr[1] == 1 ? $"{numsTo9[numsArr[0]] } {bignums[length]} {numsTo19[(number % 100) - 10]}" :
                          $"{numsTo9[numsArr[0]] } {bignums[length]} {klorNums[numsArr[1]]} {numsTo9[numsArr[2]]}" :
                          length == 2 ? (numsArr[0] == 1) ? $"{numsTo19[number - 10]}" :
                          $"{klorNums[numsArr[0]]} {numsTo9[numsArr[1]]}" :
                          length == 1 ? numsTo9[number] :
                          length == 4 ? (numsArr[0] == 1) ? (numsArr[2] == 1) ? $"{numsTo19[(numsArr[0] * 10 + numsArr[1]) - 10]} {numsTo19[(numsArr[2] * 10 + numsArr[3]) - 10]}" :
                          $"{numsTo19[(numsArr[0] * 10 + numsArr[1]) - 10]} {klorNums[numsArr[2]]} {numsTo9[numsArr[3]]}" :
                          $"{klorNums[numsArr[0]]} {numsTo9[numsArr[1]]} {klorNums[numsArr[2]]} {numsTo9[numsArr[3]]}" : ""
                         );
                Console.WriteLine(result);

    Получаем цифру в виде слов по методу Доктора Пимсрала

    Запостил: K1llray64, 24 Марта 2017

    Комментарии (0) RSS

    Добавить комментарий

    Ошибка компиляции комментария:
    1. Гости могут высказаться только в понедельник, среду, четверг или воскресение
    ava Я, guest, находясь в здравом уме и твердой памяти, торжественно заявляю:
    А не использовать ли нам bbcode?
    • [b]жирный[/b] — жирный
    • [i]курсив[/i] — курсив
    • [u]подчеркнутый[/u] — подчеркнутый
    • [s]перечеркнутый[/s] — перечеркнутый
    • [blink]мигающий[/blink] — мигающий
    • [color=red]цвет[/color] — цвет (подробнее)
    • [size=20]размер[/size] — размер (подробнее)
    • [code=<language>]some code[/code] (подробнее)
    Проверочный код