Top.Mail.Ru
Ответы

Задача на C#

Создать 2-мерный массив (2 строки и 3 столбца )
Значения ячеек вводятся из консоли
Вывести массив в виде таблицы
(Желательно использовать цикл foreach)

По дате
По Рейтингу
Аватар пользователя
Новичок
8мес

Массив то хоть какой и как вводятся значения его элементов? И foreach вообще здесь зачем?
Короче, вот пример с массивом размера 2×3 четырёхбайтного знакового типа int, шесть элементов которого вводятся каждый с новой строки:

12345678910111213141516171819
 using System; 
public static class Program 
{ 
  public static void Main() 
  { 
    int i, j; 
    int [,] A = new int [2, 3]; 
    for (i = 0; i < 2; ++i) 
      for (j = 0; j < 3; ++j) 
  	A[i, j] = int.Parse(Console.ReadLine()); 
    Console.WriteLine("Введена матрица:"); 
    for (i = 0; i < 2; ++i) 
    { 
      for (j = 0; j < 3; ++j) 
        Console.Write("{0,11:d}", A[i, j]); 
      Console.WriteLine(); 
    } 
  } 
} 
Аватар пользователя
Мыслитель
8мес

Если речь идёт о настоящем двумерном массиве, обычной матрице, а не о зубчатом - решение может выглядеть вот так:


1234567891011121314151617
 int[,] matrix = new int[2, 3]; 
 
for (int i = 0; i < matrix.GetLength(0); i++) 
    for (int j = 0; j < matrix.GetLength(1); j++) 
    { 
        Console.Write($"Значение {i} строки и {j} столбца: "); 
        matrix[i, j] = int.Parse(Console.ReadLine()); 
    } 
 
Console.WriteLine("Получившаяся матрица: "); 
for (int i = 0; i < matrix.GetLength(0); i++) 
{ 
    for (int j = 0; j < matrix.GetLength(1); j++) 
        Console.Write($"{matrix[i, j],-10}"); 
    Console.WriteLine(); 
} 
 

Через цикл foreach выводить двумерные массивы неудобно и костыльно

А вот если речь идёт о зубчатом массиве - можно сделать так:

12345678910111213141516171819
 int[][] matrix = 
{ 
    new int[3], new int[3] 
}; 
 
for (int i = 0; i < matrix.GetLength(0); i++) 
    for (int j = 0; j < 3; j++) 
    { 
        Console.Write($"Значение {i} строки и {j} столбца: "); 
        matrix[i][j] = int.Parse(Console.ReadLine()); 
    } 
 
Console.WriteLine("Получившаяся матрица: "); 
foreach (int[] array in matrix) 
{ 
    foreach (int number in array) 
        Console.Write($"{number, -10}"); 
    Console.WriteLine(); 
} 
Аватар пользователя
Профи
8мес

Вот пример программы на C#, которая создает двумерный массив (2 строки и 3 столбца), заполняет его значениями, введенными с консоли, и выводит массив в виде таблицы, используя цикл foreach.

123456789101112131415161718192021222324252627282930
 using System; 
 
class Program 
{ 
    static void Main() 
    { 
        // Создаем двумерный массив с 2 строками и 3 столбцами 
        string[,] array = new string[2, 3]; 
 
        // Заполнение массива значениями, введенными с консоли 
        for (int i = 0; i < 2; i++) 
        { 
            for (int j = 0; j < 3; j++) 
            { 
                Console.Write($"Введите значение для ячейки [{i},{j}]: "); 
                array[i, j] = Console.ReadLine(); 
            } 
        } 
 
        // Вывод массива в виде таблицы 
        Console.WriteLine("\nВывод массива в виде таблицы:"); 
        foreach (var item in array) 
        { 
            Console.Write(item + "\t"); // Вывод значений с табуляцией 
        } 
         
        Console.WriteLine(); // Переход на новую строку 
    } 
} 
 

Объяснение кода
Создание массива:

12
 string[,] array = new string[2, 3]; 
 

Здесь создается двумерный массив с 2 строками и 3 столбцами.

Заполнение массива:

123456789
 for (int i = 0; i < 2; i++) 
{ 
    for (int j = 0; j < 3; j++) 
    { 
        Console.Write($"Введите значение для ячейки [{i},{j}]: "); 
        array[i, j] = Console.ReadLine(); 
    } 
} 
 

Вложенные циклы for используются для заполнения массива значениями, введенными пользователем.

Вывод массива:

12345
 foreach (var item in array) 
{ 
    Console.Write(item + "\t"); 
} 
 

Цикл foreach используется для вывода значений массива. Значения выводятся с табуляцией для более удобного представления.

Запуск программы
Чтобы запустить эту программу, вам нужно создать новый проект C# (например, консольное приложение) и вставить данный код в файл Program.cs. После запуска вы сможете вводить значения для ячеек массива, и программа выведет их в виде таблицы.

Аватар пользователя
Профи
8мес

Вот пример кода на C#, который создает двумерный массив (2 строки и 3 столбца), заполняет его значениями, введенными из консоли, и выводит массив в виде таблицы с использованием цикла foreach:

using System;

class Program
{
static void Main()
{
// Создаем двумерный массив
int[,] array = new int[2, 3];

// Вводим значения для массива
for (int i = 0; i < 2; i++)
{
for (int j = 0; j < 3; j++)
{
Console.Write($"Введите значение для ячейки [{i}, {j}]: ");
array[i, j] = int.Parse(Console.ReadLine());
}
}

// Выводим массив в виде таблицы
Console.WriteLine("Массив в виде таблицы:");
foreach (var item in array)
{
Console.Write(item + "\t"); // Выводим значения с табуляцией
}

Console.WriteLine(); // Переход на новую строку
}
}


Как работает код:
Создание массива: Мы создаем двумерный массив array размером 2 строки и 3 столбца. Ввод данных: С помощью двух вложенных циклов for мы запрашиваем у пользователя значения для каждой ячейки массива. Вывод данных: Используя цикл foreach, мы проходим по всем элементам массива и выводим их, добавляя табуляцию для лучшего форматирования. Запуск кода - скопируйте этот код в вашу среду разработки C# (например, Visual Studio или любой другой редактор), и запустите его. Вы сможете ввести значения для массива и увидеть их в виде таблицы.

Аватар пользователя
Мыслитель
8мес

о легкотня удачи