В матрице поменять местами наибольшие элементы в первом и третьем столбцах - 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();
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д