Перевод с Pascal. Формирование матрицы и вывод ее элементов - C#

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

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

Всем Привет. Переведите пожалуйста этот код с Pascal на C#. Заодно напишу условие задания: Дана матрица размера M × N. Вывести ее элементы в следующем по-рядке: первая строка слева направо, вторая строка справа налево, третья строка слева направо, четвертая строка справа налево и т. д.

Код Pascal

var
  A: array[1..10, 1..10] of integer;
  i, j, M, N: byte;
 
begin
  writeln('Введите M, N:');
  readln(M, N);
  writeln('Случайная матрица порядка ', M, ' x ', N, ':');
  { Формируем и выводим матрицу: }
  randomize; { генератор псевдослучайных чисел }
  for i := 1 to M do begin
    for j := 1 to N do begin
     { Случайное число с интервала [0, 49]: }
      a[i, j] := random(50);
      write(a[i, j]:4)
    end;
    writeln
  end;
  writeln;
  writeln('Выводим элементы в разном порядке:');
  for i := 1 to M do
    if (i mod 2 = 1) then { нечетные строки }
      for j := 1 to N do { слева направо }
        write(' ', a[i, j])
    else { четные строки }
      for j := N downto 1 do { справа налево }
        write(' ', a[i, j]);
  readln
end.

Решение задачи: «Перевод с Pascal. Формирование матрицы и вывод ее элементов»

textual
Листинг программы
static void Main()
{
    int[,] A = new int[10, 10];
    byte M, N;
 
    Console.WriteLine("Введите M, N:");
    M = Byte.Parse(Console.ReadLine());
    N = Byte.Parse(Console.ReadLine());
    Console.WriteLine("Случайная матрица порядка " + M + " x " + N + ":");
 
    Random r = new Random();
    for (int i = 0; i < M; i++)
    {
        for (int j = 0; j < N; j++)
        {
            A[i, j] = r.Next(50);
            Console.Write(A[i, j] + " ");
        }
        Console.WriteLine();
    }
 
    Console.WriteLine("Выводим элементы в разном порядке:");
    for (int i = 0; i < M; i++)
    {
        if (i % 2 == 1)         // нечетные строки 
            for (int j = 0; j < N; j++)   // слева направо 
                Console.Write(A[i, j] + " ");
        else    // четные строки 
            for (int j = (byte)(N - 1); j >= 0; j--) // справа налево
                Console.Write(A[i, j] + " ");
        Console.WriteLine();
    }
    Console.ReadKey();
}

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


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

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

15   голосов , оценка 3.8 из 5
Похожие ответы