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

Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы. - C++

Восстановить пароль Регистрация
 
Верони4е4ка
 Аватар для Верони4е4ка
0 / 0 / 0
Регистрация: 09.02.2013
Сообщений: 42
09.02.2013, 15:53     Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы. #1
В матрице, состоящей из положительных действительных чисел поменять местами два
столбца: столбец, содержащий максимальный элемент матрицы, и
столбец, содержащий минимальный элемент матрицы.

нужно написать программу ... двумерные массивы изучаем)

[Официальным языком форума является русский язык]
Правила форума

оригинал задания:
Кликните здесь для просмотра всего текста
В матриці з позитивних дійсних чисел поміняти місцями два
стовпці: стовпець, що містить максимальний елемент матриці, і
стовпець, що містить мінімальний елемент матриці.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.02.2013, 15:53     Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы.
Посмотрите здесь:

C++ Дана матрица размера M × N. Продублировать столбец матрицы, содержащий ее минимальный элемент.
Удалить столбец, содержащий максимальный элемент матрицы. C++
C++ [C++] Удалить столбец, содержащий максимальный элемент матрицы
Поменять местами максимальный и минимальный элемент матрицы C++
Дана матрица размера 4х9. Обнулить столбец матрицы, содержащий ее максимальный элемент C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
The_bolT
70 / 70 / 1
Регистрация: 22.01.2013
Сообщений: 231
09.02.2013, 16:19     Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы. #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
58
59
60
61
#include <iostream>
#include <conio.h>
#include <ctime>
#include <stdlib.h>
 
using namespace std;
 
const  int n=4,m=4;
 
void inp(int[][m]);
void out(int[][m]);
void swap(int[][m],int,int);
 
int main(){
     int a[n][m];
     inp(a);
 
     out(a);
 
     int k,l;
     int min = a[0][0];
     int max = a[0][0];
     
 
     for(int i=0;i<n;i++)
         for(int j=0;j<m;j++){
             if(min>a[i][j]) { min = a[i][j]; k =j; }
             if(max<a[i][j]) { max = a[i][j]; l = j; }
         }
 
     swap(a,k,l);
     cout<<endl<<endl;
     
     out(a);
     getch();
     return 0;
}
 
 
void inp(int a[n][m]){
     srand (time(0));
     for(int i=0;i<n;i++)
         for(int j=0;j<m;j++)
             a[i][j]=rand()%10;
             }
             
void out(int a[n][m]){
     for(int i=0;i<n;i++){
 cout<<endl;
         for(int j=0;j<m;j++)
         cout<<a[i][j]<<' ';
         
         }
         }
 
void swap(int a[n][m],int k,int l){
     for(int j=0;j<m;j++){
         int t=a[j][k]; a[j][k]=a[j][l];
         a[j][l]=t;
         }
         }
abit
 Аватар для abit
260 / 259 / 33
Регистрация: 03.02.2013
Сообщений: 709
09.02.2013, 16:26     Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы. #3
а какие у вас числа считаются позитивными? мне что-то все тоску нагоняют...

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
    const size_t N=3,M=3;
    unsigned int a[N][M] = {{1,2,3},{3,5,6},{4,5,9}};
    
    size_t jmax=0,jmin=0;    
        
    for (size_t i = 0; i!=N; ++i)
        for (size_t j = 0; j!=M; ++j)
           {
               if (a[i][j]<a[i][jmin]) jmin = i;
               if (a[i][j]>a[i][jmax]) jmax = i;
           }
 
           
    if (jmin!=jmax)
    {
        for (size_t i=0; i!=N; ++i)
        {
            unsigned int temp = a[i][jmin];
            a[i][jmin]=a[i][jmax];
            a[i][jmax]=temp;
        }
    }
по названию темы скажу точно

.! =)
выражение истинно, . и ) разные знаки
Верони4е4ка
 Аватар для Верони4е4ка
0 / 0 / 0
Регистрация: 09.02.2013
Сообщений: 42
09.02.2013, 16:40  [ТС]     Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы. #4
спасибо большое!!!!!!!!!!!!

Добавлено через 1 минуту
The_bolT, спасибо !!!

Добавлено через 1 минуту
abit, позитивные - это те которые больше 0 .
Тема : Двумерные массивы )
magirus
Супер-модератор
 Аватар для magirus
25470 / 14011 / 740
Регистрация: 15.09.2009
Сообщений: 59,631
Записей в блоге: 61
09.02.2013, 16:41     Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы. #5
Верони4е4ка, на будущее - язык форума - Русский. потрудитесь переводить... завдання...
Верони4е4ка
 Аватар для Верони4е4ка
0 / 0 / 0
Регистрация: 09.02.2013
Сообщений: 42
09.02.2013, 16:43  [ТС]     Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы. #6
magirus, хорошо) буду знать
Infinity3000
 Аватар для Infinity3000
1057 / 576 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
09.02.2013, 17:08     Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы. #7
Верони4е4ка,

Не по теме:

позитивные - это те которые больше 0 .



Не по теме:

Позитивная возможно Вы, ну а числа либо положительные либо отрицательные

Верони4е4ка
 Аватар для Верони4е4ка
0 / 0 / 0
Регистрация: 09.02.2013
Сообщений: 42
09.02.2013, 17:15  [ТС]     Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы. #8
Infinity3000, ну на украинском позитивні ,а на русском положительные )
Infinity3000
 Аватар для Infinity3000
1057 / 576 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
09.02.2013, 17:24     Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы. #9
Цитата Сообщение от Верони4е4ка Посмотреть сообщение
Infinity3000, ну на украинском позитивні ,а на русском положительные )

Не по теме:

Те що українською "позитивні", я знаю! Я мав на увазі виключно російську мову!

Верони4е4ка
 Аватар для Верони4е4ка
0 / 0 / 0
Регистрация: 09.02.2013
Сообщений: 42
09.02.2013, 21:49  [ТС]     Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы. #10
Infinity3000, я поняла

Добавлено через 4 часа 13 минут
The_bolT, а как сделать что бы количество столбцов и строчек, и элементы матрицы пользователь сам задавал?
Ev[G]eN
Эксперт С++
 Аватар для Ev[G]eN
5093 / 1531 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
09.02.2013, 22:29     Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы. #11
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
#include <iostream>
#include <iomanip>
 
int main ()
{
    int rows;
    std::cout << "Rows: ";
    std::cin >> rows;
    
    int cols;
    std::cout << "Cols: ";
    std::cin >> cols;
    
    int **matrix = new int *[rows];
    std::cout << "Enter the matrix: " << std::endl;
    for (int i = 0; i < rows; i++) {
        matrix[i] = new int [cols];
        for (int j = 0; j < cols; j++)
            std::cin >> matrix[i][j];
    }
    system("cls");
    
    int jmax = 0;
    int jmin = 0;
    std::cout << "Matrix: " << std::endl;
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++) {
            std::cout << std::setw(5) << matrix[i][j];
            jmin = matrix[i][j] < matrix[i][jmin] ? i : jmin;
            jmax = matrix[i][j] > matrix[i][jmax] ? i : jmax;
        }
        std::cout << std::endl;
    }
    
    if (jmin != jmax) {
       for (int i = 0; i < rows; i++)
           std::swap(matrix[i][jmin], matrix[i][jmax]);
       std::cout << "Result: " << std::endl;
       for (int i = 0; i < rows; i++) {
           for (int j = 0; j < cols; j++) 
               std::cout << std::setw(5) << matrix[i][j];
           std::cout << std::endl;
       }
    } else {
           std::cout << "Error! " << jmin + 1 << " = " << jmax + 1 << "!" << std::endl;
    }
    
    for (int i = 0; i < rows; i++)
        delete [] matrix[i];
    delete [] matrix;
    
    system("pause");
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.02.2013, 16:03     Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы.
Еще ссылки по теме:

Написать программу, меняющую местами в квадратной матрице столбец, содержащий минимальный элемент и строку C++
C++ Сформировать матрицу 11*3 и поменять местами столбец, содержащий минимальный элемент, с первым столбцом
Столбец, содержащий минимальный элемент, поменять местами с последним столбцом C++

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

Или воспользуйтесь поиском по форуму:
Верони4е4ка
 Аватар для Верони4е4ка
0 / 0 / 0
Регистрация: 09.02.2013
Сообщений: 42
10.02.2013, 16:03  [ТС]     Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы. #12
Ev[G]eN, спасибо !!!

Добавлено через 17 часов 26 минут
Ev[G]eN, а как сделать что бы в матрице и дробные числа можно было задавать?
Yandex
Объявления
10.02.2013, 16:03     Поменять местами столбцы матрицы: столбец, содержащий максимальный элемент матрицы, и столбец, содержащий минимальный элемент матрицы.
Ответ Создать тему
Опции темы

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