D5. Проверка условия после выполнения расчетов в двухмерном массиве

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

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

Задачи

D5.1. Дан двумерный массив.
а) Выяснить, является ли произведение элементов второго столбца массива трехзначным числом.
б) Составить программу, определяющую, верно ли, что сумма элементов строки массива с известным номером превышает заданное число?
D5.2. Дан двумерный массив.
а) Выяснить, является ли сумма элементов четвертой строки массива двузначным числом.
б) Составить программу, определяющую, верно ли, что произведение элементов столбца массива с известным номером не превышает заданного числа?
D5.3. В двумерном массиве хранится информация о зарплате 18 человек за каждый месяц года (первого человека — в первой строке, второго — во второй и т. д.). Верно ли, что годовой доход первого человека больше некоторого заданного числа?
D5.4. Фирма имеет 10 магазинов. Информация о доходе каждого магазина за каждый месяц года хранится в двумерном массиве (в первом столбце за январь, во втором — за февраль и т. д.). Верно ли, что общий доход фирмы в сентябре превысил некоторое заданное число?
D5.5. В зрительном зале 23 ряда, в каждом из которых 40 мест (кресел). Информация о проданных билетах хранится в двумерном массиве, номера строк которых соответствуют номерам рядов, а номера столбцов — номерам мест. Если билет на то или иное место продан, то соответствующий элемент массива имеет значение 1, в противном случае — 0. Определить, имеются ли свободные места в первом ряду.
D5.6. В поезде 18 вагонов, в каждом по 36 мест. Информация о проданных на поезд билетах хранится в двумерном массиве, номера строк которого соответствуют номерам вагонов, а номера столбцов — номерам мест. Если билет на то или иное место продан, то соответствующий элемент массива имеет значение 1, в противном случае — 0. Составить программу, определяющую, имеются ли свободные места в том или ином вагоне поезда.
D5.7. Дан двумерный массив целых чисел.
а) Определить, является ли сумма элементов первой строки массива четным числом.
б) Составить программу, определяющую, верно ли, что сумма элементов столбца массива с известным номером кратна заданному числу.
D5.8. Дан двумерный массив целых чисел.
а) Составить программу, определяющую, верно ли, что сумма элементов строки массива с известным номером оканчивается цифрой 0.
б) Определить, является ли сумма элементов второго столбца массива нечетным числом.
D5.9. Дан двумерный массив. Определить:
а) в какой строке массива сумма элементов больше: в первой или в предпоследней;
б) в каком столбце массива сумма элементов меньше: во втором или в последнем.
D5.10. Дан двумерный массив. Определить:
а) в каком столбце массива сумма элементов меньше: в первом или в последнем;
б) в какой строке массива сумма элементов больше: во второй или в третьей.
D5.11. Дан двумерный массив. Составить программу, которая определяет максимальное из двух чисел: суммы элементов k-й строки и суммы элементов s-го столбца массива.
D5.12. Информация о количестве жильцов в каждой из четырех квартир каждого этажа 12-этажного дома хранится в двумерном массиве (в первой строке — информация о квартирах первого этажа, во второй — второго и т. д.). На каком этаже проживает больше людей: на третьем или на пятом?
D5.13. В двумерном массиве хранится информация о зарплате каждого из 20 сотрудников фирмы за каждый месяц года (в первом столбце — за январь, во втором — за февраль и т. д.). Верно ли, что общая зарплата всех сотрудников в феврале была меньше, чем в октябре?
D5.14. В двумерном массиве хранится информация о количестве учеников в каждом из четырех классов каждой параллели школы с первой по одиннадцатую (в первой строке — информация о первых классах, во второй — вторых и т. д.). Найти численность самого большого класса среди 10-х и 11-х классов.
D5.15. Информация о количестве жильцов в каждой из четырех квартир каждого этажа 12-этажного дома хранится в двумерном массиве (в первой строке — информация о квартирах первого этажа, во второй — второго и т. д.). В каждой квартире проживает одна семья. Найти численность самой большой семьи в квартирах 3-го и 4-го этажей.
D5.16. Найти координаты (номера) элемента, наиболее близкого к среднему значению всех элементов массива.
D5.17. Определить, является ли сумма значений элементов массива четырехзначным числом.
D5.18. В поезде 20 вагонов, в каждом по 36 мест. Информация о проданных на поезд билетах хранится в двумерном массиве, номера строк которого соответствуют номерам вагонов, а номера столбцов — номерам мест. Если билет на то или иное место продан, то соответствующий элемент массива имеет значение 1, в противном случае — 0. Составить программу, определяющую, имеются ли в поезде свободные места.
D5.19. Фирма имеет 10 магазинов. Информация о доходе каждого магазина за каждый месяц года хранится в двумерном массиве. Верно ли, что общий доход фирмы за год превысил некоторое заданное число?
D5.20. Таблица футбольного чемпионата задана в виде двумерного массива из n строк и n столбцов, в котором все элементы, принадлежащие главной диагонали, равны нулю, а каждый элемент, не принадлежащий главной диагонали, равен 3, 1 или 0 (числу очков, набранных в игре: 3 — выигрыш, 1 — ничья, 0 — проигрыш).
а) Найти число команд, имеющих больше побед, чем поражений.
б) Определить номера команд, прошедших чемпионат без поражений.
в) Выяснить, имеется ли хотя бы одна команда, выигравшая более половины игр.
г) Определить номер команды, ставшей чемпионом.
д) Определить, расположены ли команды в соответствии с занятыми ими местами в чемпионате (принять, что при равном числе очков места распределяются произвольно).
е) Для каждой команды определить занятое ею место (для простоты принять, что при равном числе очков места распределяются произвольно).
ж) Получить последовательность номеров команд в соответствии с занятыми ими местами (сначала должен идти номер команды, ставшей чемпионом, затем команды, занявшей второе место и т. д.).
D5.21. Дан двумерный массив размером n n , заполненный целыми числами. Выяснить, является ли массив магическим квадратом. В магическом квадрате суммы элементов по всем строкам, столбцам и двум диагоналям равны. Значение, которому должны быть равны указанные суммы, определить самостоятельно.
D5.22. Определить, имеются ли в двумерном массиве одинаковые элементы.
D5.23. Определить, имеются ли в двумерном массиве только два одинаковых элемента.
D5.24. В двумерном массиве имеются только два одинаковых элемента. Найти их.


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


Помощь проекту:

Понравилась статья? Поделиться с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
2 комментариев
Новые
Старые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

D5.24. В двумерном массиве имеются только два одинаковых элемента. Найти их.

int[,] array = { { 0, 1, 2 }, { 3, 4, 5 }, { 6, 7, 8 }, { 9, 7, 10 } };


int rows = array.GetUpperBound(0) + 1;    
int columns = array.Length / rows;


for (int i = 0; i < rows; i++)
{
    for (int j = 0; j < columns; j++)
    {
        Console.Write(array[i, j] + " ");
    }
    Console.WriteLine();
}
bool exitfor = false;
for (int i = 0; i < rows; i++)
{
    if (exitfor) break;
    for(int j = 0; j < columns; j++)
    {
        for( int k = 0; k < rows; k++)
        {
            for(int l = 0; l < columns; l++)
            {
                if (array[i,j] == array[k, l] && (i != k || j != l))
                {
                    Console.WriteLine($"Одинаковые числа: {array[i, j]} и {array[k, l]}");
                    Console.WriteLine($"Индексы: {i} {j} и {k} {l}");
                    exitfor = true;
                }
            }
        }
    }
}

D5.22. Определить, имеются ли в двумерном массиве одинаковые элементы.

using System;
using System.Linq;
using System.Text;
using System.Collections;


namespace Learning_Csharp
{
    interface IResult
    {
        void Result();
    }


    interface IPrintable
    {
        void Print();
    }


    struct Data :IPrintable
    {
        public int[,] array;
        public static readonly string space = string.Concat(Enumerable.Repeat("-", 100)); 
        public void Print()
        {
            Console.WriteLine("Array:");
            for (int i = 0; i < array.GetLength(0); i++)
            {
                for (int j = 0; j < array.GetLength(1); j++)
                    Console.Write(array[i,j] + " ");
                Console.WriteLine();
            }
        }
    }


    abstract class Array : IResult
    {
        protected Data data;


        protected readonly Random rand = new Random();


        public Array(int[,] array) => data = new Data() { array = array };


        private void Create(int[,] arr)
        {
            for (int i = 0; i < arr.GetLength(0); i++)
            {
                for (int j = 0; j < arr.GetLength(1); j++)
                    arr[i, j] = rand.Next(0,100);
            }
        }


        protected void CreateArray() => Create(data.array);


        public abstract void Result();
    }


    class Solution : Array
    {


        private int element { get; set; }
        private int helper { get; set; }
        private bool exitFromCicle { get; set; }


        public Solution(int[,] array) : base(array) => CreateArray();


        private void AnswerForMission(in int[,] array)
        {
            for (int i = 0; i < array.GetLength(0); i++)
            {
                for (int j = 0; j < array.GetLength(1); j++)
                {
                    element = array[i, j];


                    for (int k = 0; k < array.GetLength(0); k++)
                    {
                        for (int t = 0; t < array.GetLength(1); t++)
                        {
                            if (i != k || j != t)
                            {
                                if (element == array[k, t])
                                {
                                    helper = array[k, t];
                                    exitFromCicle = true;
                                    break;
                                }
                            }
                            else continue;
                        }
                        if (exitFromCicle) break;
                    }
                    if (exitFromCicle) break;
                }
                if (exitFromCicle) break;
            }


            if (exitFromCicle)
            {
                Console.WriteLine("Равне элементы равны: " + element);
            }
            else Console.WriteLine("Равныъ элементов в массиве нет");
        }


        public override void Result()
        {
            data.Print();


            Console.WriteLine("\n" + Data.space + "\n");


            AnswerForMission(in data.array);
        }
    }


    class Program
    {
        static void Main(string[] args)
        {
            int[,] array = new int[5, 5];


            IResult result = new Solution(array);


            result.Result();
        }
    }
}
2
0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x
()
x