Двумерный массив нужно превратить в динамические и зубчатые с использование foreach вместо for - C#
Формулировка задачи:
Найти среднее арифметическое элементов каждого из четных столбцов матрицы.
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace nomber2{ class Program{ static void Main(string[] args){ double[,] a = new double[5, 2]; Random rnd = new Random(); int i, j, n = a.Length; for (i = 0; i < 5; i++) for (j = 0; j < 2; j++){ Console.Write("a[{0},{1}] = ", i, j); a[i, j] = rnd.Next(-10, 10); Console.WriteLine("{0}", a[i, j]);} double s = 0; for (i = 0; i < 5; i++) for (j = 0; j < 2; j++){ if (i % 2 == 0) s += a[i, j]; if (i == 0) s += a[i, j];} s /= n; for (i = 0; i < 5; i++) for (j = 0; j < 2; j++) a[i, j] -= s; Console.WriteLine("s = {0}", s); Console.Write("Press any key to continue . . . "); Console.ReadKey(true); }}}
Нужно просто немного переделать его. Если знаете литературу (желательно не слишком сложную) скиньте ссылку.
Решение задачи: «Двумерный массив нужно превратить в динамические и зубчатые с использование foreach вместо for»
textual
Листинг программы
static void Main(string[] args) { double[,] a = new double[5, 2]; // двумерный double[][] b = new double[a.GetLength(0)][]; // зубчатый // Заполняем двумерный рандомно и выводим для наглядности Random rnd = new Random(); for (int i = 0; i < 5; i++) { Console.WriteLine(); for (int j = 0; j < 2; j++) { a[i, j] = rnd.Next(-10, 10); Console.Write("{0}\t", a[i, j]); } } //создаем зубчатый for (int i = 0; i < a.GetLength(0); i++) b[i] = new double[a.GetLength(1)]; Console.Write("\n----------------\n"); // Заполнили двумерный рандомно и вывели для наглядности int n = 0,k=0; // переписываем двум в зуб foreach (double x in a) { if (n<2) { b[k][n++] = x; } else { n = 0; k++; b[k][n++] = x; } } // выведим зубчатый foreach (double[] x in b) { Console.WriteLine(string.Join("\t", x)); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д