Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {
- //номера листбоксов не забудь изменить и checkbox'а тож
- Random rnd = new Random();
- listBox1.Items.Clear();
- listBox2.Items.Clear();
- int i, j;
- int n = Convert.ToInt16(Microsoft.VisualBasic.Interaction.InputBox("Введите размер массива", "Размер", "5"));
- if (n % 2 == 0)// если число четное
- {// то делается это действие
- int m = Convert.ToInt16(Microsoft.VisualBasic.Interaction.InputBox("Введите кол-во столбцов", "Размер", "5"));
- int[,] mas1 = new int[n, m];
- int[,] mas2 = new int[n, m];
- for (i = 0; i <= n - 1; i++)
- {
- string str = "";
- for (j = 0; j <= m - 1; j++)
- {
- if (checkBox1.Checked == true) // если стоит флажок
- {
- mas1[i, j] = rnd.Next(0, 10);//то заполнить рандомом
- }else
- {// иначе заполнить вручную
- mas2[i, j] = Convert.ToInt16(Microsoft.VisualBasic.Interaction.InputBox("Введите элемент массива " + Convert.ToString(i) + " " + Convert.ToString(j), "Ввод элементов массива"));
- }
- str = str + mas1[i, j] + " ";
- }
- listBox1.Items.Add(str);
- }
- // тут крч ниже начинается сама перестановка
- int x = n - 1; // это нужно, чтоб узнать номер последней строки в массиве т.к. у тебя массив будет идти до середины массива и за одну итерацию (шаг массива) будет делать сразу 2 действия
- for (i = 0; i <= (n / 2) - 1; i++)
- {
- for (j = 0; j <= m - 1; j++)
- {
- mas2[i, j] = mas1[x, j]; // первое действие верхнюю строку присваивает нижней
- mas2[x, j] = mas1[i, j]; // второе действие нижнюю строку присваивает верхней
- }
- x = x - 1; // обе строки переставились местами и теперь поднимаемся на одну строку вверх, а цикл сам уже опустится на одну вниз
- }
- for (i = 0; i <= n - 1; i++) // вывод массива в листбокс
- {
- string str = "";
- for (j = 0; j <= m - 1; j++)
- {
- str = str + mas2[i, j] + " ";
- }
- listBox2.Items.Add(str);
- }
- }else // если не четное число строк то показываем сообщение ниже и программа завершает работу
- {
- MessageBox.Show("Необходимо ввести четное число строк");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement