Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.01.2014, 17:44   #1
Toivo
 
Регистрация: 17.03.2013
Сообщений: 9
Смущение С++ матрица

Дана матрица Y(4,2). Поменять местами элементы второй строки с элементами четвертой строки. Найти максимальный элемент.

лажа с заменой в конце. поэтому прошу помочь.)

Код:
{int i,j,a,t,n,Y[4][2];
int Y[4][2]={0};
int max=-10000;
for (int i=0; i<4; i++)
{for (int j=0; j<2; j++)
{Y[i][j]=rand()%100;
if (Y[i][j]>max)
{max=Y[i][j];
}
printf("%4d",Y[i][j]);
}
printf("\n");
}
printf("max:%d\n",max);
for (i=0;i<n;i++)
{for(j=0;j<n;i++)
t=a[3][j]; a[3][j]=a[1][j]; a[1][j]=t;
printf("%4d",Y[i][j]);
printf("\n");
}

Последний раз редактировалось Stilet; 10.01.2014 в 09:24.
Toivo вне форума Ответить с цитированием
Старый 09.01.2014, 18:15   #2
troyan90
Пользователь
 
Регистрация: 23.06.2011
Сообщений: 54
По умолчанию

Код:
#include <iostream>
#include <cstdlib>
#include <ctime>

using namespace std;

int main()
{
    srand(time(0));

    int m[4][2] ={0};
    int max = 0;

    for (int i = 0; i < 4; i++)
    {
        for (int q = 0; q < 2; q++)
        {
            m[i][q] = rand() % 100;
            cout << m[i][q] << " ";
            if (m[i][q] > max)
                max = m[i][q];
        }
        cout << endl;
    }

    cout << endl << "max: " << max << endl << endl;

    int temp;

    temp = m[1][0]; m[1][0] = m[3][0]; m[3][0] = temp;
    temp = m[1][1]; m[1][1] = m[3][1]; m[3][1] = temp;

    for (int g = 0; g < 4; g++)
    {
        for (int h = 0; h < 2; h++)
            cout << m[g][h] << " ";
        cout << endl;
    }
}
troyan90 вне форума Ответить с цитированием
Старый 09.01.2014, 18:41   #3
Toivo
 
Регистрация: 17.03.2013
Сообщений: 9
По умолчанию

просто в моем ошибки исправить. мне так будет понятней.

Код:
{for(j=0;j<n;i++)
t=a[3][j]; a[3][j]=a[1][j]; a[1][j]=t;
printf("%4d",Y[i][j]);
printf("\n");
}

Последний раз редактировалось Stilet; 10.01.2014 в 09:25.
Toivo вне форума Ответить с цитированием
Старый 10.01.2014, 06:41   #4
Базиля
Участник клуба
 
Аватар для Базиля
 
Регистрация: 03.12.2009
Сообщений: 1,013
По умолчанию

Во первых - Вам все портит внешний цикл, тем самым Вы будете переставлять элементы туда и обратно.
А если еще n окажется четным, в конечном итоге получится, что Вы так и не переставите элементы.
Объединять перестановку элементов и вывод матрицы в единое целое - не лучшая идея.
Во вторых - у Вас явно здесь должен быть составной оператор!
Внимательней наблюдайте за операторными скобками.
Базиля вне форума Ответить с цитированием
Старый 16.01.2014, 14:18   #5
vvmcpp
Форумчанин
 
Аватар для vvmcpp
 
Регистрация: 11.12.2010
Сообщений: 116
По умолчанию

Цитата:
Сообщение от Toivo Посмотреть сообщение
просто в моем ошибки исправить. мне так будет понятней.

Код:
{for(j=0;j<n;i++)
t=a[3][j]; a[3][j]=a[1][j]; a[1][j]=t;
printf("%4d",Y[i][j]);
printf("\n");
}
Что делает этот код?
Код:
for(j=0;j<n;i++)
Перевожу на русский язык.
от j равно 0 до j<n увеличивать i на единицу.
Зачем?

так перебираете все элементы матрицы, matrix[n][m], где m и n будут размерность матрицы
Код:
for(i=0;i<n;i++)
for(j=0;j<m;j++)
{
 //тут что то делаете с  matrix[n][m]
}
Это самый простой алгоритм поиска , но не самый быстрый
vvmcpp вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Паскаль. Матрица NxN -> текстовый файл -> Матрица NxN - найти max по диагоналям -> типизированный файл Лунатик13 Помощь студентам 1 20.02.2012 15:54
Непонятки с DirectX (матрица поворота, камера, матрица проекции) ROD Общие вопросы C/C++ 2 17.09.2010 17:00
матрица А[10,10]. Оленьк@68 Помощь студентам 2 29.03.2010 21:21
матрица Medik07 Помощь студентам 1 28.12.2009 20:19
TurboPascal: граф, матрица смежности и матрица инцидентности. ulala Помощь студентам 0 02.12.2009 10:11