В целочисленном массиве размером n*n удалить строки, в которых сумма элементов не превышает заданного числа - C#

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

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

Помогите пожалуйста с заданием, в массиве размером n*n, элементы которого являются целыми числами, удалить все строки, в которых сумма элементов не превышает заданного числа.

Решение задачи: «В целочисленном массиве размером n*n удалить строки, в которых сумма элементов не превышает заданного числа»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            // массив размером [n,n]
            int n = 3;
            int[,] array = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } };
 
            // массив сумм одной строки
            int[] sum = new int[n];
 
            // сумма не должна быть больше х
            int x = 14;
 
            // новое кол-во строк массива
            int new_size = 0;
 
            for (int i = 0; i < n; i++)
            {
                for (int j = 0; j < n; j++)
                {
                    sum[i] += array[i, j];
                }
 
                // если сумма строки больше х эту строку будем писать в новый массив
                if (sum[i] > x) new_size++;
            }
 
            // новый массив
            int[,] new_arr = new int[new_size, n];
 
            // новый номер строки массива
            int new_i = 0;
 
            for (int i = 0; i < n; i++)
            {
                if (sum[i] > x)
                {
                    for (int j = 0; j < n; j++)
                    {
                        // записываем в новый массив значения из первого
                        new_arr[new_i, j] = array[i, j];
                    }
 
                    // номер строки в новом массиве
                    new_i++;
                }
            }
 
 
            // проверка
            for (int i = 0; i < new_size; i++)
            {
                Console.WriteLine("\nСтрока № " + i);
 
                for (int j = 0; j < n; j++)
                {
                    Console.WriteLine(new_arr[i, j]);
                }
            }
 
            Console.ReadKey();
        }
    }
}

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


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

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

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