D9. Работа с несколькими двумерными массивами

Напишите в комментариях к этой записи консольные приложения для решения этих задач, укажите также код задачи.
Внимание! При решении задач обязательно учтите Рекомендации по оформлению решений задач на двумерные массивы

Решены задачи нет. Не решены: пока все.

Задачи

D9.1. Даны два двумерных массива одинаковых размеров.
а) Создать третий массив такого же размера, каждый элемент которого равен сумме соответствующих элементов двух первых массивов.
б) Создать третий массив такого же размера, каждый элемент которого равен 100, если соответствующие элементы двух первых массивов имеют одинаковый знак, и равен нулю в противном случае.
D9.2. Даны два двумерных массива одинаковых размеров.
а) Создать третий массив такого же размера, каждый элемент которого равен разности соответствующих элементов двух первых массивов.
б) Создать третий массив такого же размера, каждый элемент которого равен 13, если оба соответствующих элемента двух первых массивов больше 50, и равен 12 в противном случае.
D9.3. Даны два двумерных массива из 12 строк и 28 столбцов. В первом из них записано количество осадков (в мм), выпавших за каждый из первых 28 дней каждого месяца 2009 года, во втором — аналогичные сведения за 2010 год. Получить третий массив с данными об изменении количества осадков для каждого дня (в мм).
D9.4. Даны два двумерных массива из 12 строк и 28 столбцов. В первом из них записана температура воздуха за каждый из первых 28 дней каждого месяца 2009 года, во втором — аналогичные сведения за 2010 год. Получить третий массив с данными об изменении температуры для каждого дня (в %).
D9.5. Значения элементов двумерного массива из m строк и n столбцов скопировать в одномерный массив размером m n . Копирование проводить:
а) по строкам начиная с первой (а в ней — с крайнего левого элемента);
б) по столбцам начиная с первого (а в нем — с самого верхнего элемента).
D9.6. Дан двумерный массив размером n n . Сформировать:
а) одномерный массив из элементов заданного массива, расположенных над главной диагональю;
б) одномерный массив из элементов заданного массива, расположенных под главной диагональю;
в) одномерный массив из элементов заданного массива, расположенных над побочной диагональю;
г) одномерный массив из элементов заданного массива, расположенных под побочной диагональю.
О главной и побочной диагоналях см. разд. «Работа с квадратными массивами».
D9.7. Дан двумерный массив размером n n , заполненный целыми числами.
а) Все его элементы, кратные трем, записать в одномерный массив.
б) Все его положительные элементы записать в один одномерный массив, а остальные — в другой.
D9.8. Дан двумерный массив размером n n , заполненный целыми числами.
а) Все его отрицательные элементы записать в одномерный массив.
б) Все его четные элементы записать в один одномерный массив, а нечетные — в другой.
D9.9. Дан двумерный массив.
а) Сформировать одномерный массив, каждый элемент которого равен количеству элементов соответствующего столбца двумерного массива, больших данного числа.
б) Сформировать одномерный массив, каждый элемент которого равен сумме элементов соответствующей строки двумерного массива, меньших данного числа.
D9.10. Дан двумерный массив целых чисел.
а) Сформировать одномерный массив, каждый элемент которого равен сумме четных положительных элементов соответствующего столбца двумерного массива.
б) Сформировать одномерный массив, каждый элемент которого равен количеству нечетных отрицательных элементов соответствующей строки двумерного массива.
в) Сформировать одномерный массив, каждый элемент которого равен количеству отрицательных элементов в соответствующей строке двумерного массива, кратных 3 или 7.
г) Сформировать одномерный массив, каждый элемент которого равен сумме положительных элементов в соответствующем столбце двумерного массива, кратных 4 или 5.
D9.11. Дан двумерный массив целых чисел.
а) Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующего столбца двумерного массива.
б) Сформировать одномерный массив, каждый элемент которого равен наибольшему по модулю элементу соответствующей строки двумерного массива.
D9.12. Дан двумерный массив целых чисел.
а) Сформировать одномерный массив, каждый элемент которого равен первому четному элементу соответствующего столбца двумерного массива (если такого элемента в столбце нет, то он равен нулю).
б) Сформировать одномерный массив, каждый элемент которого равен последнему нечетному элементу соответствующей строки двумерного массива (если такого элемента в строке нет, то он равен нулю).


NEW: Наш Чат, в котором вы можете обсудить любые вопросы, идеи, поделиться опытом или связаться с администраторами.


Понравилась статья? Поделиться с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о

2 комментариев
Новые
Старые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
using System;
namespace Less9_12
{
    class Array2D
    {
        int[,] array; int line; int coloumn;
        public Array2D(int[,] array, int line, int coloumn)
        {
            this.array = array;
            this.line = line;
            this.coloumn = coloumn;
        }
        public void GetArray()
        {
            for (int i = 0; i < line; i++)
            {
                for (int j = 0; j < coloumn; j++)
                {
                    array[i, j] = new Random().Next(1, 25);
                    Console.Write(array[i, j] + "\t");
                }
                Console.WriteLine("\n");
            }
            int[] arr1 = new int[coloumn];
            for (int j = 0; j < coloumn; j++)
            {
                for (int i = 0; i < line; i++)
                {
                    if (array[i, j] % 2 == 0 )
                    {
                        arr1[j] = array[i, j];
                        break;
                    }
                    if (array[i, j] % 2 != 0 && i==line-1 )
                    {
                        arr1[j] = 0;
                        break;
                    }
                }
            }
            int[] arr2 = new int[line];
            for (int i = 0; i < line; i++)
            {
                for (int j = coloumn-1; j >= 0; j--)
                {
                    if (array[i, j] % 2 != 0)
                    {
                        arr2[i] = array[i, j];
                        break;
                    }
                    if (array[i, j] % 2 == 0 && j == 0)
                    {
                        arr2[i] = 0;
                        break;
                    }
                }
            }
            Console.WriteLine("одномерный массив, каждый элемент которого равен первому четному элементу столбца:");
            foreach (var s in arr1)
            { Console.Write(s + " "); } 
            Console.WriteLine();
            Console.WriteLine("одномерный массив, каждый элемент которого равен последнему нечетному элементу строки:");
            foreach (var q in arr2)
            { Console.Write(q + " "); } 


        }  
    }
    class Program
    {
        static void Main()
        {
            int line = 5;
            int coloumn = 5;
            int[,] array = new int[line, coloumn];
            Array2D X = new (array, line, coloumn);
            X.GetArray();
        }
    }
}
Последний раз редактировалось 2 лет назад Евгений ем
using System;
namespace Less9_1a
{
    class Array2D
    {
        int[,] array; int line; int coloumn;
        public Array2D(int[,] array, int line, int coloumn)
        {
            this.array = array;
            this.line = line;
            this.coloumn = coloumn;
        }
        public void GetArray()
        {
            int[] arr1 = new int[line * coloumn];
            int[] arr2 = new int[line * coloumn];
            var num = 0; var s = 0; var q = 0;
            for (int i = 0; i < line; i++)
            {
                for (int j = 0; j < coloumn; j++)
                {
                    array[i, j] = new Random().Next(1, 5);
                    Console.Write(array[i, j] + "\t");
                    arr1[s] = array[i, j];
                    s++;
                }
                Console.WriteLine("\n");
            }
            Console.WriteLine();
            for (int l = 0; l < line; l++)
            {
                for (int k = 0; k < coloumn; k++)
                {
                    array[l, k] = new Random().Next(1, 5);
                    Console.Write(array[l, k] + "\t");
                    arr2[q] = array[l, k];
                    q++;
                }
                Console.WriteLine("\n");
            }
            Console.WriteLine();
           
            for (int z = 0; z < line; z++)
            {
                for (int x = 0; x < coloumn; x++)
                {
                    array[z, x] = arr1[num] + arr2[num];
                    num++;
                    Console.Write(array[z, x] + "\t");
                }
                Console.WriteLine("\n"); 
            }
        }  
    }
    class Program
    {
        static void Main()
        {
            int line = 5;
            int coloumn = 5;
            int[,] array = new int[line, coloumn];
            Array2D X = new (array, line, coloumn);
            X.GetArray();
        }
    }
}
2
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x