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

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

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

Есть массив 5х5, нужно сначала поменять столбцы в нужном порядке (вместо 01234 поменять на 32410) и таким же образом строки (вместо 01234 поменять на 20314). Скажите, в чем проблема, я сделал, но не всегда выводить правильно.. i0,i1,i2,i3,i4,j0,j1,j2,j3,j4 - номера строк и столбцов. Массив kript[,] является дубликатом массива mass[,]
            for (i = 0; i < 5; i++)
            {
                kript[i, 0] = mass[i, j0];
                kript[i, 1] = mass[i, j1];
                kript[i, 2] = mass[i, j2];
                kript[i, 3] = mass[i, j3];
                kript[i, 4] = mass[i, j4];
            }
 
                for (i = 0; i < 5; i++)
                {
                    for (j = 0; j < 5; j++)
                    {
                        mass[i, j] = kript[i, j];
                    }
                }
 
                for (j = 0; j < 5; j++)
                {
                    kript[0, j] = mass[i0, j];
                    kript[1, j] = mass[i1, j];
                    kript[2, j] = mass[i2, j];
                    kript[3, j] = mass[i3, j];
                    kript[4, j] = mass[i4, j];
                }

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

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
 
namespace BPD_Lab1
{
    public partial class frmMain : Form
    {
        int i1, i2, i3, i4, i0, j1, j2, j3, j4, j0;
        String filename;
        public frmMain()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            int k = 0, i, j;
            Char[,] mass = new Char[5, 5];
            Char[,] kript = new Char[5, 5];
            Char[] s1 = textBox1.Text.ToCharArray();
            for (i = 0; i < 5; i++)
            {
                for (j = 0; j < 5; j++)
                {
                    if (k <= s1.Length - 1)
                    {
                        mass[i, j] = s1[k];
                        k++;
                    }
                    else mass[i, j] = '_';
                }
            }
 
            for (i = 0; i < 5; i++)
            {
                for (j = 0; j < 5; j++)
                {
                    kript[i, j] = mass[i, j];
                }
            }
 
            for (i = 0; i < 5; i++)
            {
                kript[i, 0] = mass[i, j0];
                kript[i, 1] = mass[i, j1];
                kript[i, 2] = mass[i, j2];
                kript[i, 3] = mass[i, j3];
                kript[i, 4] = mass[i, j4];
            }
 
                for (i = 0; i < 5; i++)
                {
                    for (j = 0; j < 5; j++)
                    {
                        mass[i, j] = kript[i, j];
                    }
                }
 
                for (j = 0; j < 5; j++)
                {
                    kript[0, j] = mass[i0, j];
                    kript[1, j] = mass[i1, j];
                    kript[2, j] = mass[i2, j];
                    kript[3, j] = mass[i3, j];
                    kript[4, j] = mass[i4, j];
                }
 
 
            textBox2.Text = "";
            for (i = 0; i < 5; i++)
            {
                for (j = 0; j < 5; j++)
                {
                    textBox2.Text += kript[i, j].ToString();
                }
            }
 
        }
 
        private void button3_Click(object sender, EventArgs e)
        {
            openFileDialog1.ShowDialog();
            if (openFileDialog1.FileName != null)
            {
                filename = openFileDialog1.FileName;
            }
            textBox1.Text = File.ReadAllText(filename);
        }
 
        private void button4_Click(object sender, EventArgs e)
        {
            i0 = Convert.ToInt32(textBox3.Text);
            i1 = Convert.ToInt32(textBox4.Text);
            i2 = Convert.ToInt32(textBox5.Text);
            i3 = Convert.ToInt32(textBox6.Text);
            i4 = Convert.ToInt32(textBox7.Text);
 
            j0 = Convert.ToInt32(textBox12.Text);
            j1 = Convert.ToInt32(textBox11.Text);
            j2 = Convert.ToInt32(textBox10.Text);
            j3 = Convert.ToInt32(textBox9.Text);
            j4 = Convert.ToInt32(textBox8.Text); 
        }
    }
}

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


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

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

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