Advertisement
Guest User

Untitled

a guest
Jun 13th, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.61 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using System.IO;
  7.  
  8. namespace NepokrytovAI
  9. {
  10. /// <summary>
  11. /// Класс-контейнер для разабатываемых на курсе ОП подпрограмм.
  12. /// </summary>
  13. public static class Helper
  14. {
  15. /// <summary>
  16. /// Организует ввод одномерного
  17. /// массива вещественных чисел
  18. /// по одному элементу в строку
  19. /// </summary>
  20. /// <returns>Возврат введеного массива</returns>
  21. public static double[] ReadArrayOfDouble()
  22. {
  23. Console.WriteLine("Введите размерность массива");
  24. int c = int.Parse(Console.ReadLine());
  25. Console.WriteLine("Введите элементы массива построчно");
  26. double[] array = new double[c];
  27. for (int i = 0; i < c; i++)
  28. {
  29. array[i] = double.Parse(Console.ReadLine());
  30. }
  31. return array;
  32. }
  33. /// <summary>
  34. /// Ввод одномерного массива вещественных чисел
  35. /// по одному элементу в строку
  36. /// </summary>
  37. /// <param name="lenght">Длина массива</param>
  38. /// <returns>Возврат массива</returns>
  39. public static double[] ReadArrayOfDouble(int lenght)
  40. {
  41. Console.WriteLine("Введите элементы массива построчно");
  42. double[] array = new double[lenght];
  43. for (int i = 0; i < lenght; i++)
  44. {
  45. array[i] = double.Parse(Console.ReadLine());
  46. }
  47. return array;
  48. }
  49. /// <summary>
  50. /// Вывод массива
  51. /// </summary>
  52. /// <param name="array">Массивс, которые будет выведен </param>
  53. public static void WriteArrayDouble(double[] array)
  54. {
  55. Console.WriteLine("Вывод Массива");
  56. for (int i = 0; i < array.Length; i++)
  57. {
  58. Console.WriteLine(array[i]);
  59. }
  60. }
  61. /// <summary>
  62. /// Организует ввод одномерного
  63. /// массива вещественных чисел
  64. /// по одному элементу в строку
  65. /// </summary>
  66. /// <returns>Возврат введеного массива</returns>
  67. public static int[] ReadArrayOfInt()
  68. {
  69. Console.WriteLine("Введите размерность массива");
  70. int c = int.Parse(Console.ReadLine());
  71. Console.WriteLine("Введите элементы массива построчно");
  72. int[] array = new int[c];
  73. for (int i = 0; i < c; i++)
  74. {
  75. array[i] = int.Parse(Console.ReadLine());
  76. }
  77. return array;
  78. }
  79. /// <summary>
  80. /// Ввод одномерного массива вещественных чисел
  81. /// по одному элементу в строку
  82. /// </summary>
  83. /// <param name="lenght">Длина массива</param>
  84. /// <returns>Возврат массива</returns>
  85. public static int[] ReadArrayOfInt(int lenght)
  86. {
  87. Console.WriteLine("Введите элементы массива построчно");
  88. int[] array = new int[lenght];
  89. for (int i = 0; i < lenght; i++)
  90. {
  91. array[i] = int.Parse(Console.ReadLine());
  92. }
  93. return array;
  94. }
  95. /// <summary>
  96. /// Вывод массива
  97. /// </summary>
  98. /// <param name="array">Массивс, которые будет выведен </param>
  99. public static void WriteArrayInt(int[] array)
  100. {
  101. Console.WriteLine("Вывод Массива");
  102. for (int i = 0; i < array.Length; i++)
  103. {
  104. Console.WriteLine(array[i]);
  105. }
  106. }
  107.  
  108. /// <summary>
  109. /// Вычисление факториала числа
  110. /// </summary>
  111. /// <param name="n">Заданное число</param>
  112. /// <returns>Факториал заданного числа</returns>
  113. public static int Factorial(int n)
  114. {
  115. if (n > 0)
  116. {
  117. return Helper.Factorial(n - 1) * n;
  118. }
  119. else
  120. {
  121. if (n == 0)
  122. {
  123. return n = 1;
  124. }
  125. else
  126. {
  127. return n = 0;
  128. }
  129. }
  130. }
  131.  
  132. /// <summary>
  133. /// Вывод в файл 2х мерной матрицы
  134. /// </summary>
  135. /// <param name="path">Ссылка на файл </param>
  136. /// <param name="matrix">Матрица</param>
  137. public static void WriteMatrix(string path, double[][] matrix)
  138. {
  139. StreamWriter f = new StreamWriter(path, false);
  140. f.WriteLine(matrix.Length);
  141. for (int i=0; i<matrix.Length; i++)
  142. {
  143. double[] ai = matrix[i];
  144. for (int j=0; j<ai.Length;j++)
  145. {
  146. f.Write(" {0,7:F2}", ai[j]);
  147. }
  148. f.WriteLine();
  149. }
  150. f.Close();
  151. }
  152.  
  153. /// <summary>
  154. /// Ввод двумерного массива
  155. /// Чтением из файла
  156. /// </summary>
  157. /// <param name="path">Ссылка на файл</param>
  158. public static double[][] ReadDoubleMatrix(string path)
  159. {
  160. StreamReader f = new StreamReader(path);
  161. int m = int.Parse(f.ReadLine());
  162. double[][] matrix = new double[m][];
  163. for (int i = 0; i < matrix.Length; i++)
  164. {
  165. string[] strs = f.ReadLine().Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries);
  166. double[] ai = new double[strs.Length];
  167. for (int j=0;j<ai.Length;j++)
  168. {
  169. ai[j] = double.Parse(strs[j]);
  170. }
  171. matrix[i] = ai;
  172. }
  173. f.Close();
  174. return matrix;
  175. }
  176. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement