Перегрузка методов и определение типа переменных (int, double, string) - C#

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

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

Идея в том, чтобы определить, что ввел пользователь: тип double, integer или string, и сложить эти 2 переменные с помощью перегруженного метода. Моя проблема в том, что я не могу получить xTrue и yTrue для выполнения задачи, т.к., как я понял, эти xTrue и yTrue создаются в if и там же остаются - не переходят в дальнейший кусок кода. Возможно, я пытаюсь сделать это через *опу, но пока не знаю, как можно по-другому.
Листинг программы
  1. namespace ConsoleApplication6
  2. {
  3. class Program
  4. {
  5. static void Main(string[] args)
  6. {
  7. int yInt = 0; double yDouble = 0; string yString = "0";
  8. int xInt = 0; double xDouble = 0; string xString = "0";
  9. Console.Write("Enter any numbers of symbols: ");
  10. var x = Console.ReadLine();
  11. //КОНВЕРТИРУЮ x В ПОДХОДЯЩИЙ ТИП
  12. if (Int32.TryParse(x, out xInt))
  13. xInt = Convert.ToInt32(x);
  14. else if(Double.TryParse(x, out xDouble))
  15. xDouble = Convert.ToDouble(x);
  16. else
  17. xString = Convert.ToString(x);
  18. //КОНВЕРТИРУЮ x В ПОДХОДЯЩИЙ ТИП
  19. Console.Write("\nEnter any numbers of symbols again: ");
  20. var y = Console.ReadLine();
  21. //КОНВЕРТИРУЮ y В ПОДХОДЯЩИЙ ТИП
  22. if (Int32.TryParse(y, out xInt))
  23. yInt = Convert.ToInt32(y);
  24. else if (Double.TryParse(y, out xDouble))
  25. yDouble = Convert.ToDouble(y);
  26. else
  27. yString = Convert.ToString(y);
  28. //КОНВЕРТИРУЮ y В ПОДХОДЯЩИЙ ТИП
  29. if (xInt != 0)
  30. { int xTrue = xInt; }
  31. if (xDouble != 0)
  32. { double xTrue = xDouble; }
  33. if (xString != "0")
  34. { string xTrue = xString; }
  35. if (yInt != 0)
  36. { int yTrue = yInt; }
  37. if (yDouble != 0)
  38. { double yTrue = xDouble; }
  39. if (yString != "0")
  40. { string yTrue = yString; }
  41. Console.Write("\nResult: {0}", sum(xTrue, yTrue)); //Здесь компилятор пишет, что xTrue и yTrue не существуют.
  42. Console.ReadLine();
  43. }
  44. static int sum(int x, int y)
  45. { return x + y; }
  46. static string sum(string x, string y)
  47. { return x + y; }
  48. static double sum(double x, double y)
  49. { return x + y; }
  50.  
  51. }
  52. }
Подскажите пожалуйста решение моей задачи.. ну или хотя бы направление. Спасибо! P.S. Извините, если это похоже на быдлокод. Я только учусь.

Решение задачи: «Перегрузка методов и определение типа переменных (int, double, string)»

textual
Листинг программы
  1.  if (Int32.TryParse(x, out xInt)) {}

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


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

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

6   голосов , оценка 3.333 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы