Форум программистов, компьютерный форум, киберфорум
C (Си)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 10.11.2019
Сообщений: 7
1

Перемещение min в матрице

16.12.2019, 15:51. Показов 638. Ответов 0

Author24 — интернет-сервис помощи студентам
Дана квадратная матрица NxN, в которой требуется найти минимальное по модулю число (будет находится в строке i, столбце j, 0 <= i,j < N).
Минимальное по модулю число только одно в матрице.
Далее необходимо поменять столбец j со столбцом N-1, а затем строку i со строкой N-1: при этом найденное число окажется в нижнем правом положении.
Вывести полученную матрицу.

Порядок ввода данных фиксирован: на первой строке N – размер матрицы, 0 < N <= 100, далее построчно сама матрица, элементы разделены одним пробелом. Выводить полученную матрицу в таком же виде.

Ограничения: В программе матрица должна считываться в память и храниться в двумерном массиве типа int.
Обращения к элементам матриц и векторов должны выполняться с помощью операции индексации массивов: V[i], A[i][j].
Вещественную арифметику и math.h не использовать. Целочисленные типы данных, большие чем int / unsigned int, не использовать.
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
#include <stdio.h>
#pragma warning(disable:4996)
int main()
{
    int A[101][101], n, i, j, min, mi, mj, x;
    scanf("%d", &n);
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < n; j++)
        {
            scanf("%d", &A[i][j]);
        }
    }
    if (A[0][0] >= 0) min = A[0][0];
    else min = -1 * A[0][0];
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < n; j++)
        {
            if ((A[i][j] >= 0) && (A[i][j] < min))
            {
                min = A[i][j];
                mi = i;
                mj = j;
            }
            if ((A[i][j] < 0) && ((-1 * A[i][j]) < min))
            {
                min = -1 * A[i][j];
                mi = i;
                mj = j;
            }
        }
    }
    printf("\n");
    for (i = 0; i < n; i++)
    {
        x = A[i][mj];
        A[i][mj] = A[i][n - 1];
        A[i][n - 1] = x;
    }
    for (j = 0; j < n; j++)
    {
        x = A[mi][j];
        A[mi][j] = A[n - 1][j];
        A[n - 1][j] = x;
    }
    for (i = 0; i < n; i++)
    {
        for (j = 0; j < n; j++)
        {
            printf("%d ", A[i][j]);
        }
        printf("\n");
    }
}
Подскажите что не так,что исправить.Спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.12.2019, 15:51
Ответы с готовыми решениями:

Поменять в матрице m*n (вводит пользователь) строку с max элементом со строкой min элемента
Помогите пожалуйста решить. Поменять в матрице m*n (вводит пользователь) строку с max элементом со...

Даны дейтвительные числа a,b,c. Получить (min(a,a+b)=min(a,b+c))/(1+min(a+bc,b))
Даны дейтвительные числа a,b,c. Получить (min(a,a+b)=min(a,b+c))/(1+min(a+bc,b))

Поменять в матрице местами строку с максимальным элементом и строку, содержащую min элемент
// 1=Указатели. Поменять местами строки.cpp : Defines the entry point for the console application....

Даны действительные числа a, b. Рассчитать Y=min(a,b), Y1=min(min(a*b,a+b), min(a2 –b*a,b3-3*a), Y2=min(Y12+Y
Даны действительные числа a, b. Рассчитать Y=min(a,b), Y1=min(min(a*b,a+b), min(a2 –b*a,b3-3*a)),...

0
16.12.2019, 15:51
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.12.2019, 15:51
Помогаю со студенческими работами здесь

Массив: Получить min(a1;a2;a3)+min(a4;a5;a6)+min(a7;a8;a9)+min(a10;a11;a12) .
Заполнить массив а1,а2,а3...а12 случайными числами от 0 до 20. Получить ...

Max и min в матрице
С клавиатуры вводится массив целых чисел. Подсчитать сумму элементов над главной диагональю....

Max и min в матрице.
Помогите пожалуйста с задачей очень нуждаюсь в вашей помощи Дана действительная матрица mxn....

В матрице найти MIN
В матрице найти MIN и если он отрицательная величина, то заменить его и все элементы ему равные на...


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

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru