Си диез / Говнокод #11933 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
public List<int> parseInt(string input)
{
  string res = "";
  int i = 0;
  while (input[i] != ' ')
  {
    res = res + input[i];
    //System.Console.WriteLine(res + " = res[" + i + "]");
    i++;
  }
  i = res.Length - 4;
  List<int> num = new List<int>();
  for (int j = 0; i > -4; i = i - 4, j++)
  {
    try
    {
      num.Add(int.Parse(res.Substring(i, 4)));
    }
    catch (Exception e1)
    {
      try
      {
        num.Add(int.Parse(res.Substring(i + 1, 3)));
      }
      catch (Exception e2)
      {
        try
        {
          num.Add(int.Parse(res.Substring(i + 2, 2)));
        }
        catch (Exception e3)
        {
          num.Add(int.Parse(res.Substring(i + 3, 1)));
        }
      }
    }
  //System.Console.WriteLine(num[j]+" = num["+j+"]");
  }
  return num;
}

Опять студенты.
Задание: реализовать длинную арифметику.

один из примеров чтения длинного числа

Запостил: graph_di5 graph_di5, (Updated )

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

  • А чего, программа очень правдоподобно имитирует человечскую логику, жаль только компьютеры так не работают.
    Ответить
  • > длинную арифметику.
    Так вроде ж есть уже BigInteger для этого.
    try/catch свели к if/else
    Ответить
  • Переносим вес на левую ножку... Аккуратно, не спеша... поднимаем правую, передвигаем чуть вперед, опускаем...
    Ответить

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

Из-за тебя ушел bormand, guest!

    А не использовать ли нам bbcode?


    8