Как сделать частичную сортировку массива? - C#

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

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

Здравствуйте. Мне было дано такое вот задание: Отсортировать по возрастанию только те элементы массива, которые делятся на сумму своих цифр. Но я не могу разобраться, как сделать саму сортировку. Вот моя "наработка":
        int[] mass = new int[10];
        Random rnd = new Random();
        int min = 0, max = 0, a = 0, s = 0, ost = 0;
 
        private void button1_Click(object sender, EventArgs e)
        {
            //Сортировка
            for (int i = 0; i < mass.Length; i++)
            {
                //for (int j = 0; j < mass.Length - 1; j++)
                //{
                    a = mass[i];
                while (a > 0)
                    {
                        s = s + (a % 10);
                        a = a / 10;
                    }
                ost = mass[i]%s;
                s = 0;
                if (ost == 0)
                {
                    Array.Sort(mass);
                    //if (mass[j] > mass[j + 1])
                    //{
                    //    int z = mass[j];
                    //    mass[j] = mass[j + 1];
                    //    mass[j + 1] = z;
                    //}
                }
              } 
           // }
        }
        private void button2_Click(object sender, EventArgs e)
        {
            //Создание массива
            min = Convert.ToInt32(textBox3.Text);
            max = Convert.ToInt32(textBox4.Text);
            for (int i = 0; i < 10; i++)
            mass[i] = rnd.Next(min, max);
            for (int i = 0; i < 10; i++) { textBox1.Text += mass[i] + " "; }
Прошу, помогите

Решение задачи: «Как сделать частичную сортировку массива?»

textual
Листинг программы
int[] ints = {5, 4, 3, 2, 1};
var sort = InsertionSortSpecific(ints, i => i < 5);
foreach (int i in sort)
{
    Console.WriteLine(i);
}

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


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

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

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