Форум программистов, компьютерный форум CyberForum.ru

Матрицы: поменять местами первую строку и строку, содержащую максимальный элемент - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 8, средняя оценка - 4.88
sansay
 Аватар для sansay
4 / 4 / 3
Регистрация: 30.11.2011
Сообщений: 122
30.08.2012, 12:25     Матрицы: поменять местами первую строку и строку, содержащую максимальный элемент #1
1)В матрице поменять местами 1 строку и строку содержащие последнее вхождение элемента максимального где максимальный- максимальный элем всей матрицъ вывести итоговую матрицу.
2)В матрице обнулить Все строки содержащие элемент мин более одного раза мин минимальный элемент всей матрицы вывести итоговую матрицу
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.08.2012, 12:25     Матрицы: поменять местами первую строку и строку, содержащую максимальный элемент
Посмотрите здесь:

Поменять местами строку с максимальный элемент и строку с минимальным элементом матрицы C++
В данной действительной матрице размера 3Х3 поменять местами строку, содержащую элемент с наибольшим значе-нием, со строкой, содержащей элемент с наим C++
Поменять местами первую строку и строку, в которой находится первый нулевой элемент. Принять, что массив просматривается слева направо и сверху вниз. C++
Поменять местами первую строку и строку сумма элементов которой минимальна C++
C++ В матрице из целых чисел поменять местами первую строку и строку, содержащую самый большой по абсолютной величине элемент матрицы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Neon-z
46 / 41 / 1
Регистрация: 06.09.2010
Сообщений: 419
30.08.2012, 18:17     Матрицы: поменять местами первую строку и строку, содержащую максимальный элемент #2
Вы хотите чтобы за вас тут написали? Лохов ищите?
Напишите код, если что то работать не будет - пишите.
[cеnsored]
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
30.08.2012, 19:32     Матрицы: поменять местами первую строку и строку, содержащую максимальный элемент #3
1)В матрице поменять местами 1 строку и строку содержащие последнее вхождение элемента максимального где максимальный- максимальный элем всей матрицъ вывести итоговую матрицу:
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
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <memory.h>
 
#define N 10
 
void swap(int& n1, int& n2)
 { int _tn = n1; n1 = n2; n2 = _tn; }
 
int main()
{
    int** A = new int*[N];
    memset((void*)A, 0x00, 4 * N);
 
    for (int x1 = 0; x1 < N; x1++)
    {
        A[x1] = new int[N];
        for (int x2 = 0; x2 < N; x2++)
        {
            A[x1][x2] = rand() % 9 + 1;
            printf("%d ",A[x1][x2]);
        }
 
        printf("\n");
    }
 
    printf("\n");
 
    int max_i = 0, max_j = 0;
    for (int n1 = 0; n1 < N; n1++)
        for (int n2 = 0; n2 < N; n2++)
            if (A[n1][n2] > A[max_i][max_j])
            {
                max_i = n1;
                max_j = n2;
            }
 
    int dd_i = -1;
    for (int d1 = N-1; d1 >= 0 && dd_i < 0; d1--)
        for (int d2 = N-1; d2 >= 0; d2--)
            if (A[d1][d2] == A[max_i][max_j])
            {
                dd_i = d1; break;
            }
 
    for (int m = 0; m < N; m++)
        swap(A[max_i][m],A[dd_i][m]);
 
    for (int z1 = 0; z1 < N; z1++)
    {
        for (int z2 = 0; z2 < N; z2++)
            printf("%d ",A[z1][z2]);
        printf("\n");
    }
 
    _getch();
 
    return 0;
}
http://liveworkspace.org/code/d5b2e3...7e0faef088daf4
Миниатюры
Матрицы: поменять местами первую строку и строку, содержащую максимальный элемент  
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
30.08.2012, 19:40     Матрицы: поменять местами первую строку и строку, содержащую максимальный элемент #4
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <memory.h>
 
#define N 10
 
int main()
{
    int** A = new int*[N];
    memset((void*)A, 0x00, 4 * N);
 
    for (int x1 = 0; x1 < N; x1++)
    {
        A[x1] = new int[N];
        for (int x2 = 0; x2 < N; x2++)
        {
            A[x1][x2] = rand() % 9 + 1;
            printf("%d ",A[x1][x2]);
        }
 
        printf("\n");
    }
 
    printf("\n");
 
    int min_i = 0, min_j = 0;
    for (int n1 = 0; n1 < N; n1++)
        for (int n2 = 0; n2 < N; n2++)
            if (A[n1][n2] < A[min_i][min_j])
            {
                min_i = n1;
                min_j = n2;
            }
 
    for (int i = 0; i < N; i++)
    {
        int count = 0;
        for (int j = 0; j < N; j++)
            if (A[i][j] == A[min_i][min_j])
                count++;
 
        for (int r = 0; r < N && count > 1; r++)
            A[i][r] = 0;
    }
 
    for (int z1 = 0; z1 < N; z1++)
    {
        for (int z2 = 0; z2 < N; z2++)
            printf("%d ",A[z1][z2]);
        printf("\n");
    }
 
    _getch();
 
    return 0;
}
http://liveworkspace.org/code/c81a2a...8577d96af9ca95
Миниатюры
Матрицы: поменять местами первую строку и строку, содержащую максимальный элемент  
Torito
Сообщений: n/a
09.05.2014, 07:10     Матрицы: поменять местами первую строку и строку, содержащую максимальный элемент #5
А не могли бы вы добавить комментарий?
Yandex
Объявления
09.05.2014, 07:10     Матрицы: поменять местами первую строку и строку, содержащую максимальный элемент
Ответ Создать тему
Опции темы

Текущее время: 01:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru