Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.11.2020, 18:10   #1
Adelinka
Новичок
Джуниор
 
Регистрация: 16.11.2020
Сообщений: 2
По умолчанию Помогите доработать код

Добрый вечер!
задание вот такое:
Дана матрица A(N,M). В каждой строке поменять местами
наибольший и наименьший элементы.
Код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            double zam;
            double[,] a = new double[10, 10];
            Random random = new Random();
            for (int i = 0; i < a.GetLength(0); i++)   
                for (int j = 0; j < a.GetLength(1); j++)
                {
                    textBox1.Text = ("a[" + Convert.ToString(i + 1) + "," + Convert.ToString(j + 1) + "]=");
                    textBox1.Text = (" ");
                }
            for (int i = 0; i < a.GetLength(0); i++) 
            {
             
                for (int j = 0; j < a.GetLength(1); j++)
                {
                   textBox1.Text = (a[i, j] + "  ");
                }
            }
            int i_min = 0, j_min = 0;
            int i_max = 0, j_max = 0;
            double min = a[0, 0];
            double max = a[0, 0];
            for (int i = 0; i < a.GetLength(0); i++)  
                for (int j = 1; j < a.GetLength(1); j++)
                {
                    if (a[i, j] <= min)
                    {
                        min = a[i, j];
                        i_min = i;
                        j_min = j;
                    }
                    if (a[i, j] >= max)
                    {
                        max = a[i, j];
                        i_max = i;
                        j_max = j;
                    }
                }
            
            zam = a[i_min, j_min];
            a[i_min, j_min] = a[i_max, j_max];
            a[i_max, j_max] = zam;
           
            for (int i = 0; i < a.GetLength(0); i++)
            {
                for (int j = 0; j < a.GetLength(1); j++)
                {
                    textBox2. Text=(Convert.ToString(a[i, j]) + "  ");
                }
            }
        }
    }
}

Код компилируется но при нажатии на Button выводится только одно число а не весь массив.Помогите пожалуйста решить эту проблему.
Adelinka вне форума Ответить с цитированием
Старый 16.11.2020, 18:24   #2
FrosyaZZ
Форумчанин
 
Регистрация: 16.11.2020
Сообщений: 243
По умолчанию

Код:
textBox2. Text=(Convert.ToString(a[i, j]) + "  ");
Вы здесь присваиваете каждое число отдельно. Соберите нужную строку.
FrosyaZZ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите пожалуйста доработать код vavucho Помощь студентам 3 23.03.2020 09:43
Delphi помогите доработать код Anton19901505 Помощь студентам 1 06.08.2017 09:22
Помогите доработать код C++ max.sokol Помощь студентам 5 18.12.2015 19:18
Помогите доработать код со строками Оксана33 Общие вопросы по Java, Java SE, Kotlin 4 24.09.2015 13:06