0 / 0 / 0
Регистрация: 09.03.2014
Сообщений: 42
1

Найти максимальное значение среди всех элементов тех строк матрицы, в которых максимальный элемент в строке в

18.07.2014, 14:44. Показов 2158. Ответов 3
Метки нет (Все метки)

Дана вещественная матрица А размером MxN, все элементы которой различны. Найти максимальное значение среди всех элементов тех строк матрицы, в которых максималь-ный элемент в строке встречается раньше минимального.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            int N = Convert.ToInt32(Console.ReadLine());
            int M = Convert.ToInt32(Console.ReadLine());
            int i,j;
            int max = int.MinValue, min = int.MaxValue;
            //int jmax =0, jmin =0;
            int[,] A = new int[N, M];
            int[] jmi = new int[M];
            int[] jma = new int[M];
            Random rnd = new Random();
            for (i = 0; i < N; i++)
            {
                for (j = 0; j < M; j++)
                {
                    A[i, j] = rnd.Next(10);
                    Console.Write(A[i, j] + " ");
                }
                Console.WriteLine();
            }
            for (i = 0; i < N; i++)
            {
                for (j = 0; j < M; j++)
                {
                    if (A[i, j] > max)
                    {
                        max = A[i, j];
                        jma[j] = j;
                    }
                    if (A[i, j] < min)
                    {
                        min = A[i, j];
                        jmi[j] = j;
                    }
                }
            }
            Console.WriteLine();
            for (i = 0; i < N; i++)
            {
                for (j = 0; j < M; j++)
                {
                    if (jma[j] < jmi[j])
                    {
                        if (A[i, jma[j]] > max)
                        {
                            max = A[i, jma[j]];
                        }
                    }
                }
            }
            Console.WriteLine(max);
            Console.ReadLine();
        }
    }
}
Проблема в том, что не могу найти отдельно каждый минимальный и максимальный элемент строки, чтобы потом сравнивать, кто что может подскажите)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.07.2014, 14:44
Ответы с готовыми решениями:

Массивы. Найти максимальный элемент среди всех элементов тех строк заданной матрицы, которые упорядочены
Здравствуйте! помогите написать программу на языке C++. Найти максимальный элемент среди всех...

Найти максимальный элемент среди всех элементов тех строк заданной матрицы А (4,4), которые упорядочены по возрастанию
нужно найти максимальный элемент среди всех элементов тех строк заданной матрицы А (4,4), которые...

Найти максимальный среди всех элементов тех строк заданной матрицы, которые упорядочены
Найти максимальный среди всех элементов тех строк заданной матрицы, которые упорядочены (либо по...

Найти максимальный среди всех элементов тех строк заданной матрицы, которые упорядочены
Доброго времени суток, у меня есть задача ( практика,паскаль, процедуры ) так вот я не могу решить...

3
65 / 65 / 16
Регистрация: 07.04.2014
Сообщений: 332
18.07.2014, 14:59 2
Уважаемая, вы поиском пользоваться умеете?

Найти маскимальное значение среди строк матрицы соответствующее условию


C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
            var array = new int[10,4];
            
            var ran = new Random();
 
            for (var i = 0; i < 10; i++)
            {
                for (var j = 0; j < 4; j++)
                {
                    array[i, j] = ran.Next(1, 100);
                }
            }
 
            for (var i = 0; i < 10; i++)
            {
                var minTemp = array[i, 0];
                var maxTemp = array[i, 0];
                var minCounter = 0;
                var maxCounter = 0;
 
                for (var j = 0; j < 4; j++)
                {
                    if (maxTemp < array[i, j])
                    {
                        maxCounter = j;
                    }
                    if (minTemp > array[i, j])
                    {
                        minCounter = j;
                    }
                }
 
                if (maxCounter < minCounter)
                {
                    MessageBox.Show(array[i, maxCounter].ToString() + " ");
                }
            }
1
foo();
886 / 587 / 222
Регистрация: 03.07.2013
Сообщений: 1,549
Записей в блоге: 2
18.07.2014, 15:00 3
Oksana_C, я бы так делал:
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
static int Max(int[,] matrix)
{
    int result = int.MinValue;
    for (int i = 0; i < matrix.GetLength(0); i++)
    {
        int max = int.MinValue,
            min = int.MaxValue,
            maxIndex = -1,
            minIndex = -1;
        for (int j = 0; j < matrix.GetLength(1); j++)
        {
            if (matrix[i, j] > max)
            {
                maxIndex = j;
                max = matrix[i, j];
            }
            if (matrix[i, j] < min)
            {
                minIndex = j;
                min = matrix[i, j];
            }
        }
        if (maxIndex < minIndex)
            result = Math.Max(result, max);
    }
    return result;
}
1
65 / 65 / 16
Регистрация: 07.04.2014
Сообщений: 332
18.07.2014, 15:06 4
rattrapper, хм. у меня реализация в if`ах оптимальнее.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.07.2014, 15:06
Помогаю со студенческими работами здесь

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

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

Найти максимальный элемент среди элементов строк матрицы
В общем дан двумерный массив 3 на 3. Нужно найти максимальный элемент среди элементов строк: ...

Найти максимальный элемент среди элементов строк матрицы
Дан массив А(8.8) найти максимальный элемент среди элементов строк


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru