Изменить код таким образом, чтобы данные цифры можно было вводить в процессе запуска программы - C#

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

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

Есть программа. Необходимо изменить код таким образом, чтобы данные цифры можно было вводить в процессе запуска программы
Листинг программы
  1. static void Main(string[] args)
  2. {
  3. List<Statistik> sp = new List<Statistik>();
  4. sp.Add(new Statistik("Азия", 43.8, 960, 8848, 1535));
  5. sp.Add(new Statistik("Африка", 30.3, 750, 6010, 224));
  6. sp.Add(new Statistik("Северная и Центральная Америка", 24.2, 720, 6187, 244));
  7. sp.Add(new Statistik("Южная Америка", 17.8, 590, 7035, 127));
  8. sp.Add(new Statistik("Антарктида", 14.0, 2200, 6100, 0));
  9. sp.Add(new Statistik("Европа", 10.5, 300, 4810, 569));
  10. sp.Add(new Statistik("Австралия и Окенания", 8.4, 340, 5030, 15));
  11. Console.WriteLine("a");
  12. a(sp);
  13. Console.WriteLine("b");
  14. b(sp);
  15. Console.WriteLine("c");
  16. c(sp);
  17. Console.ReadKey();
  18. }
вот вся программа:
Листинг программы
  1. static void Main(string[] args)
  2. {
  3. List<Statistik> sp = new List<Statistik>();
  4. sp.Add(new Statistik("Азия", 43.8, 960, 8848, 1535));
  5. sp.Add(new Statistik("Африка", 30.3, 750, 6010, 224));
  6. sp.Add(new Statistik("Северная и Центральная Америка", 24.2, 720, 6187, 244));
  7. sp.Add(new Statistik("Южная Америка", 17.8, 590, 7035, 127));
  8. sp.Add(new Statistik("Антарктида", 14.0, 2200, 6100, 0));
  9. sp.Add(new Statistik("Европа", 10.5, 300, 4810, 569));
  10. sp.Add(new Statistik("Австралия и Окенания", 8.4, 340, 5030, 15));
  11. Console.WriteLine("a");
  12. a(sp);
  13. Console.WriteLine("b");
  14. b(sp);
  15. Console.WriteLine("c");
  16. c(sp);
  17. Console.ReadKey();
  18. }
  19. static void a(List<Statistik> t)
  20. {
  21. Console.WriteLine("Наименее заселенная часть света - Антарктида, население составляет " + t.Min(a => a.People)+" млн.чел.");
  22. Console.WriteLine("Наиболее заселенная часть света - Азия, население составляет " + t.Max(a => a.People) + " млн.чел.");
  23. foreach (Statistik p in t.OrderByDescending(a => a.Area))
  24. Console.WriteLine("{0,35} {1,5} {2,5} {3,5} {4,5}", p.Name, p.Area, p.Haverage, p.Hmax, p.People);
  25. }
  26. static void b(List<Statistik> t)
  27. {
  28. Console.WriteLine("Наибольшая разница между средней высотой и максимальной составляет " + t.Max(a => a.Hmax - a.Haverage)+" метров");
  29. foreach (Statistik p in t.OrderBy(a => a.Hmax))
  30. Console.WriteLine("{0,35} {1,5} {2,5} {3,5} {4,5}", p.Name, p.Area, p.Haverage, p.Hmax, p.People);
  31. }
  32. static void c(List<Statistik> t)
  33. {
  34. Console.WriteLine("Самая максимальная по площади часть света - Азия: " + t.Max(a => a.Area)+" млн.км2.");
  35. foreach (Statistik p in t.OrderBy(a => a.Haverage))
  36. Console.WriteLine("{0,35} {1,5} {2,5} {3,5} {4,5}", p.Name, p.Area, p.Haverage, p.Hmax, p.People);
  37. }
  38. public class Statistik
  39. {
  40. string name;
  41. double area, haverage, hmax, people;
  42. public string Name
  43. {
  44. get { return name; }
  45. set { name = value; }
  46. }
  47. public double Area
  48. {
  49. get { return area; }
  50. set { area = value; }
  51. }
  52. public double Haverage
  53. {
  54. get { return haverage; }
  55. set { haverage = value; }
  56. }
  57. public double Hmax
  58. {
  59. get { return hmax; }
  60. set { hmax = value; }
  61. }
  62. public double People
  63. {
  64. get { return people; }
  65. set { people = value; }
  66. }
  67. public Statistik(string q, double a, double b, double c, double d)
  68. {
  69. name = q;
  70. area = a;
  71. haverage = b;
  72. hmax = c;
  73. people = d;
  74. }
  75. }

Решение задачи: «Изменить код таким образом, чтобы данные цифры можно было вводить в процессе запуска программы»

textual
Листинг программы
  1. static void zapoln(List<Statistik> sp)
  2.         {
  3.             string[] str = { "Азии", "Африки", "Северной и Центральной Америки", "Южной Америки", "Антарктиды", "Европа", "Австралии и Окенании" };
  4.  
  5.             int n = 10;//Число записей
  6.             for (int i = 0; i < str.Length; i++)
  7.             {
  8.                 double a, b, c, d;
  9.                 while (true)
  10.                 {
  11.                     try
  12.                     {
  13.                         Console.WriteLine("Введите данные для {0}(через пробел):", str[i]); string text = Console.ReadLine();
  14.                         var sannar = text.Split(' ');
  15.                         a = double.Parse(sannar[0]); b = double.Parse(sannar[1]); c = double.Parse(sannar[2]); d = double.Parse(sannar[3]);
  16.                         break;
  17.                     }
  18.                     catch (Exception)
  19.                     { continue; }
  20.                 }
  21.  
  22.                 sp.Add(new Statistik(str[i], a, b, c, d));
  23.             }
  24.         }//Заполнение
  25.  
  26.         static void print(List<Statistik> sp)
  27.         {
  28.             foreach (var i in sp) Console.WriteLine("{0} {1} {2} {3} {4}", i.Name, i.Area, i.Haverage, i.Hmax, i.People);
  29.         }
  30.  
  31.         static void Main(string[] args)
  32.         {
  33.            
  34.             List<Statistik> sp = new List<Statistik>();
  35.             zapoln(sp);//Заполнение через пробел
  36.  
  37.             print(sp);
  38.             Console.ReadKey();
  39.         }

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


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

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

8   голосов , оценка 4.25 из 5

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

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

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