В матрице поменять местами наибольшие элементы в первом и третьем столбцах - C#

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

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

В матрице А(4-строки,3-столбца) поменять местами наибольшие элементы в первом и третьем столбцах. Как этот код будет выглядеть в С# , и как вместо процедуры исп массив.
program ch31;
 
var i, j, k, m, max, x: integer;
    a: array [1..3] of array [1..4] of integer;
 
procedure maxind(t: integer);
 
var r: integer;
 
begin
  k := 1;
  max := a[1, t];
  for r := 2 to 3 do
    if a[r, t] > max
      then begin
        k := r;
        max := a[r, t];
      end;
end;
 
begin
  randomize;
  writeln('Source array:'); writeln;
  for i := 1 to 3 do
    begin
      for j := 1 to 4 do
        begin
        a[i, j] := random(201) - 50;
        write(a[i, j]:4, '   ');
      end;
      writeln;
    end;
  writeln;
  maxind(1);
  m := k;
  maxind(3);
  x := a[m, 1];
  a[m, 1] := a[k, 3];
  a[k, 3] := x;
  writeln('Destination array:'); writeln;
  for i := 1 to 3 do
    begin
      for j := 1 to 4 do
        begin
        write(a[i, j]:4, '   ');
      end;
      writeln;
    end;
  readln;
end.

Решение задачи: «В матрице поменять местами наибольшие элементы в первом и третьем столбцах»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication5
{
    class Program
    {
        static void Main(string[] args)
        {
          //  int max = m0;
           // int max1 = 0;
            //int p;;
            int i1 = 0;
            int j1 = 0;
            int i2 = 0;
            int j2 = 0;
            Random rnd = new Random();
            int[,] mass = new int[3, 3];
            for (int i = 0; i < 3; i++)
                for (int j = 0; j < 3; j++)
 
                    mass[i, j] = rnd.Next(10);
            for (int i = 0; i < 3; i++)
            {
                for (int j = 0; j < 3; j++)
 
                    Console.Write(mass[i, j] + "\t");
                Console.WriteLine();
            }
 
            int max = mass[0,0];
            int max1 = mass[0,0];
            int p = mass[0, 0];
 
 
            Console.ReadLine();
 
             for (int i = 0; i < 3; i++)
                 for (int j = 0; j < 1; j++)
                 {
                     if (mass[i, j] > max)
                     {
                         max = mass[i, j];
                         i1 = i;
                         j1 = j;
                     }
                
                 }
            
           
             for (int i = 0; i < 3; i++)
                 for (int j = 3-1; j > 1 ; j--)
                 {
                     if (mass[i, j] > max1)
                     {
                         max1 = mass[i, j];
                         i2 = i;
                         j2 = j;
 
                     }
 
                 }
 
             mass[i1, j1] = max;
             mass[i2, j2] = max1;
             for (int i = 0; i < 3; i++)
                 for (int j = 0; j < 3;j++ )
 
                     p = mass[i1, j1];
                 mass[i1, j1] = mass[i2, j2];
                 mass[i2, j2] = p;
             
 
 
                  Console.WriteLine("Меняем значения {0}(максимальное число 1го столбца) и {1}"+
                     "(максимально число последнего столбца) друг с другом",max,max1);
                 Console.ReadLine();
 
           
 
                     for (int i = 0; i < 3; i++)
                     {
                         for (int j = 0; j < 3; j++)
 
                             Console.Write(mass[i, j] + "\t");
                         Console.WriteLine();
                     }
             Console.ReadLine();
 
 
 
 
 
 
 
        }
    }
}

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


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

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

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