Заполнение jagged (ступенчатого) массива из файла? - C#

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

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

Консоль. Нужно написать заполнение ступенчатого массива из файла (т.е. прочитать и записать в ступенчатый)

HELP Файл в директории - test3.txt:
2 4 6 8 9 10 12 3 3 1 5 0
Кусок программы с переменными и нек-рыми др. действиями со ступенчатым, к-рые работают:
Листинг программы
  1. int[]
  2. int[][] jaggedArr = null;
  3. int m, n, inputChoiceLength;
  4. int dN, qN; // для запоминания кол-ва подмассивов в jaggedArr
  5. //public int q;
  6. public int m2;
  7. //int inputChoice = 0;
  8. bool exit = true;
  9. void inputJag() // Ввод ступенчатого
  10. {
  11. Console.WriteLine("Введите кол-во элементов ступенчатого массива: "); // кол-во массивов в массиве
  12. int q = Convert.ToInt32(Console.ReadLine()); // q - кол-во массивов в jaggedArr
  13. jaggedArr = new int[q][]; // объявление ступенчатого массива
  14. for (int i = 0; i<q; i++)
  15. {
  16. Console.WriteLine("Введите кол-во эл-тов в строке: "); //(в каждом новом массиве)
  17. int n = Convert.ToInt32(Console.ReadLine()); // измерение (кол-во эл-тов) очередного подмассива
  18. int k=1;
  19. jaggedArr[i] = new int[n]; // объявление очередного подмассива
  20. for (int j=0; j<n; j++)
  21. {
  22. Console.WriteLine("Vvedite"+k+" element stroki");
  23. jaggedArr[i][j]=int.Parse(Console.ReadLine());
  24. k++;
  25. }
  26. qN = q;
  27. Console.WriteLine();
  28. }
  29. for (int i = 0; i < q; i++)
  30. {
  31. Console.WriteLine();
  32. for (int j = 0; j < jaggedArr[i].Length; j++)
  33. {
  34. Console.Write(jaggedArr[i][j] + " ");
  35. }
  36. }
  37. Console.WriteLine();
  38. }
  39. void outJag() // Вывод ступенчатого массива
  40. {
  41. for (int i = 0; i < jaggedArr.Length; i++)
  42. {
  43. for (int j = 0; j < jaggedArr[i].GetLength(0); j++)
  44. {
  45. Console.Write(jaggedArr[i][j] + " ");
  46. }
  47. Console.Write('\n');
  48. }
  49. Console.ReadKey();
  50. }
  51. void jagMaxMin() // Max, Min ступенчатого
  52. {
  53. int i, j, k;
  54. int jagMax = jaggedArr[0][0];
  55. int jagMin = jaggedArr[0][0];
  56. k = 0;
  57. int jj = 0;
  58. for (i = 0; i < qN; i++)
  59. {
  60. for (j = 0; j < jaggedArr[i].Length; j++)
  61. {
  62. if (jaggedArr[i][j] > jagMax)
  63. {
  64. jagMax = jaggedArr[i][j];
  65. k = i;
  66. jj = j;
  67. }
  68. }
  69. }
  70. Console.WriteLine("Max: jaggedArr[{0},{1}]={2}", k + 1, jj + 1, jagMax);
  71. for (i = 0; i < qN; i++)
  72. {
  73. for (j = 0; j < jaggedArr[i].Length; j++)
  74. {
  75. if (jaggedArr[i][j] < jagMin)
  76. {
  77. jagMin = jaggedArr[i][j];
  78. k = i;
  79. jj = j;
  80. }
  81. }
  82. }
  83. Console.WriteLine("Min: jaggedArr[{0},{1}]={2}", k+1, jj+1,jagMin);
  84. }
  85. void menu()
  86. {
  87. while (exit)
  88. {
  89. Console.SetCursorPosition(1, 1);
  90. Console.BackgroundColor = ConsoleColor.DarkMagenta;
  91. Console.ForegroundColor = ConsoleColor.Green;
  92. Console.Write("Выберите опцию: \n --СТУПЕНЧАТЫЕ МАССИВЫ--- \n 18 - ввод с клав-ы \n 19 - заполнение из файла НЕТ?? \n 20 - вывод \n 21 – изменение эл-тов массива НЕТ?? \n 22 – max, min НЕТ??\n");
  93. Console.ResetColor();
  94. Console.Write("Опция>> ");
  95. /*int inputChoice;
  96. int.TryParse(Console.ReadLine(), out inputChoice);*/ // было
  97. int inputChoice;
  98. int.TryParse(Console.ReadLine(), out inputChoice);
  99. //Console.WriteLine("inputChoice = " + inputChoice);
  100. switch (inputChoice)
  101. {
  102. case 18: inputJag();
  103. break;
  104. case 19: readJag();
  105. break;
  106. case 20: outJag();
  107. break;
  108. case 21: changeJag(jaggedArr);
  109. break;
  110. case 22: jagMaxMin();
  111. break;
  112. case 0: exit = false;
  113. break;
  114. }
  115. if (exit == true)
  116. {
  117. Console.WriteLine("Нажмите любую клавишу для продолжения...");
  118. Console.ReadKey();
  119. }
  120. Console.Clear();
  121. }
  122. }
  123. static void Main(string[] args)
  124. {
  125. //menu();
  126. Program p = new Program();
  127. p.menu();
  128. }
Visual 2010, так что без навороченностей бы :/

Решение задачи: «Заполнение jagged (ступенчатого) массива из файла?»

textual
Листинг программы
  1. int[,] map = new int[fileLines.Length,fileLines[0].Split(' ').Length];

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


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

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

13   голосов , оценка 3.692 из 5

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

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

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