Как вывести зубчастый массив в с#? (Чтоб не выходило исключение)
using System;
using static System.Console;
using static System.Array;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
Write("Введите ширину массива: ");
int N = int.Parse(ReadLine());
Write("Введите длинну массива: ");
int M = int.Parse(ReadLine());
Write("Введите диапазон массива: ");
Write("\n\tВведите минимальное число: ");
int A = int.Parse(ReadLine());
Write("\n\tВведите максимальное число: ");
int B = int.Parse(ReadLine());
int[][] arr = new int[N][];
arr[0] = new int[N];
arr[1] = new int[M];
arr.GetLength(0);
arr.GetLength(1);
Random a = new Random();
for (int i = 0; i < arr.GetLength(0); i++) {
for(int j = 0; j < arr.GetLength(1); j++)
{
arr[i][j] = a.Next(A,B) ;
}
}
for (int i = 0; i < arr.GetLength(0); i++)
{
for (int j = 0; j < arr.GetLength(1); j++)
{
Write(" " + arr);
}
}
}
}
}
Ответы (2 шт):
Автор решения: Igor
→ Ссылка
for (int i = 0; i < arr.GetLength(0); i++) {
for(int j = 0; arr[i] != null && j < arr[i].GetLength(0); j++) {
Автор решения: aepot
→ Ссылка
Зубчатый массив, это просто массив массивов, одномерный массив одномерных массивов, поэтому стоит использовать просто .Length.
Random rnd = new Random();
int[][] arr = new int[N][];
for (int i = 0; i < arr.Length; i++)
{
arr[i] = new int[M];
for(int j = 0; j < arr[i].Length; j++)
{
arr[i][j] = rnd.Next(A, B);
}
}
for (int i = 0; i < arr.Length; i++)
{
WriteLine(string.Join(" ", arr[i]));
}