Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.55/20: Рейтинг темы: голосов - 20, средняя оценка - 4.55
Seniorus
2 / 2 / 0
Регистрация: 08.11.2011
Сообщений: 10
1

Отобразить главную и побочную диагонали симметрично относительно вертикальной оси

08.11.2011, 23:21. Просмотров 3927. Ответов 7
Метки нет (Все метки)

Помогите, пожалуйста, с решением задачи:
Заполнить матрицу случайными числами. Отобразить главную и побочную диагонали симметрично относительно вертикальной оси. Матрица 9х9.
С рандомными значениями, вроде, разобрался (matrix[i][j] = rand() % 100), но вот как представить симметрию ума не приложу(
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.11.2011, 23:21
Ответы с готовыми решениями:

Отобразить главную и побочную диагонали симметрично относительно вертикальной оси
Да, задача будет сложной не для всех, но для меня она очень сложная. Создать...

Отобразить главную и побочную диагонали матрицы симметрично относительно горизонтальной оси
Здравствуйте, помогите, пожалуйста, решить задачу. Нужно заполнить матрицу...

Отобразить симметрично относительно вертикальной оси секторы матрицы
Всем привет! Не могу решить задачу на языке Турбо С: Дана матрица 9 х 9, нужно...

Отобразить симметрично относительно вертикальной оси секторы матрицы
Заполнить матрицу случайными числами. Отобразить симметрично относительно...

Отобразить симметрично относительно вертикальной оси секторы матрицы
Напишите пожалуйста прогу. Создать квадратную матрицу целых чисел размером...

7
alkagolik
Заблокирован
08.11.2011, 23:33 2
Цитата Сообщение от Seniorus Посмотреть сообщение
Отобразить главную и побочную диагонали симметрично относительно вертикальной оси.
расшифруйте, можно рисунком
0
Seniorus
2 / 2 / 0
Регистрация: 08.11.2011
Сообщений: 10
08.11.2011, 23:49  [ТС] 3
Не могу никак довести до ума...
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
#include "stdafx.h"
    #include <iostream>
    #include <conio.h>
    #include <stdio.h>
    #include <string.h>
 
    using namespace std;
 
    #define A 9
 
    int main(void)
    {
    int matrix[A][A]; 
 
    for(int i = 0; i <= A; ++i)
    {
        for(int j = 0; j <= A; ++j)
        {
            // j = i   условие для элементов на главной диагонали
            // j = (A - 1 - j)   условие для элементов на побочной диагонали
            
            if( j = i && j = (A - 1 - i) )
            {
                    
                    matrix[i][j] = matrix[i][A - 1 - j];
            }
            else  
                   matrix[i][j] = rand() % 100;
       }
    }
    _getch();
      return 0;
    }
На картинке элементы взаимозаменить заменить черные <-> красные, синие<->зеленые
0
Изображения
 
Seniorus
2 / 2 / 0
Регистрация: 08.11.2011
Сообщений: 10
09.11.2011, 00:04  [ТС] 4
Цитата Сообщение от alkagolik Посмотреть сообщение
расшифруйте, можно рисунком
Думаю, на русском лучше некуда вышло)
0
greeezz
275 / 168 / 21
Регистрация: 10.07.2011
Сообщений: 441
09.11.2011, 00:11 5
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
#include <iostream>
using std::cin;
using std::cout;
using std::endl;
using std::srand;
using std::rand;
 
#include <iomanip>
using std::setw;
 
#include <ctime> 
 
 
int main(){
    const int a = 9;
    int temp;
    int matrix[a][a];
 
    srand(time(NULL));
 
    for(int i = 0; i<a; ++i){   // заполняем случайными числами
        for(int j = 0; j<a; ++j){
            matrix[i][j] = rand() % 100;
            cout << setw(3)<< matrix[i][j] << " ";
        }
        cout << endl;
    }
    for(int i = 0; i<a; ++i){   //меняем значения
        int temp = matrix[i][i];
        matrix[i][i] = matrix[i][(a-1)-i];
        matrix[i][(a-1)-i] = temp;
    }
 
    cout << endl;
    for(int i = 0; i<a; ++i){   //печатаем
        for(int j = 0; j<a; ++j){
            cout << setw(3) << matrix[i][j] << " ";
        }
        cout << endl;
    }
 
    cin.get();
 
}
2
Seniorus
2 / 2 / 0
Регистрация: 08.11.2011
Сообщений: 10
09.11.2011, 00:15  [ТС] 6
Цитата Сообщение от greeezz Посмотреть сообщение
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
#include <iostream>
using std::cin;
using std::cout;
using std::endl;
using std::srand;
using std::rand;
 
#include <iomanip>
using std::setw;
 
#include <ctime> 
 
 
int main(){
    const int a = 9;
    int temp;
    int matrix[a][a];
 
    srand(time(NULL));
 
    for(int i = 0; i<a; ++i){   // заполняем случайными числами
        for(int j = 0; j<a; ++j){
            matrix[i][j] = rand() % 100;
            cout << setw(3)<< matrix[i][j] << " ";
        }
        cout << endl;
    }
    for(int i = 0; i<a; ++i){   //меняем значения
        int temp = matrix[i][i];
        matrix[i][i] = matrix[i][(a-1)-i];
        matrix[i][(a-1)-i] = temp;
    }
 
    cout << endl;
    for(int i = 0; i<a; ++i){   //печатаем
        for(int j = 0; j<a; ++j){
            cout << setw(3) << matrix[i][j] << " ";
        }
        cout << endl;
    }
 
    cin.get();
 
}
Просто ОГРОМНЕЙШЕЕ СПАСИБО!!!
1
alkagolik
Заблокирован
09.11.2011, 00:35 7
нк вот как бэ главная диагналь... если еще актуально... а ели нет - то и нет... дамп
м да
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
using namespace std;
 
#define A 9
 
int main(void)
{
    int matrix[A][A], tmp;
    srand(time(0));
 
    //заполнить матрицу сл числами
    for(int i = 0; i < A; ++i)
        for (int j = 0; j < A; ++j)
            matrix[i][j] = rand() % 2;
 
    puts("исходная матрицаn\n");
    for(int i = 0; i < A; ++i){
        printf("\n");
        for (int j = 0; j < A; ++j){
            matrix[i][j] = rand() % 2;
            printf( "%d ",matrix[ i ][ j ] );
        }
    }
 
    puts("ремейкнутая матрицаn\n");
    for(int i = 0; i < A; ++i){
        printf("\n");
        for (int j = 0; j < A; ++j){
            if(i == j)
                printf( "%d ", matrix[ i ][ j ] );
            else
                printf(" ");
 
        }
    }
 
    return 0;
}
1
Seniorus
2 / 2 / 0
Регистрация: 08.11.2011
Сообщений: 10
09.11.2011, 01:06  [ТС] 8
Цитата Сообщение от alkagolik Посмотреть сообщение
нк вот как бэ главная диагналь... если еще актуально... а ели нет - то и нет... дамп
м да
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
 
using namespace std;
 
#define A 9
 
int main(void)
{
    int matrix[A][A], tmp;
    srand(time(0));
 
    //заполнить матрицу сл числами
    for(int i = 0; i < A; ++i)
        for (int j = 0; j < A; ++j)
            matrix[i][j] = rand() % 2;
 
    puts("исходная матрицаn\n");
    for(int i = 0; i < A; ++i){
        printf("\n");
        for (int j = 0; j < A; ++j){
            matrix[i][j] = rand() % 2;
            printf( "%d ",matrix[ i ][ j ] );
        }
    }
 
    puts("ремейкнутая матрицаn\n");
    for(int i = 0; i < A; ++i){
        printf("\n");
        for (int j = 0; j < A; ++j){
            if(i == j)
                printf( "%d ", matrix[ i ][ j ] );
            else
                printf(" ");
 
        }
    }
 
    return 0;
}
И Вам спасибо, что не оставили в беде)
0
09.11.2011, 01:06
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.11.2011, 01:06

Отобразить симметрично относительно вертикальной оси секторы матрицы
Заполнить матрицу случайными числами. Отобразить симметрично относительно...

Отобразить симметрично относительно вертикальной оси секторы матрицы
Доброго времени суток. Помогите разобраться с матрицей: нужно создать...

Отобразить симметрично относительно вертикальной оси секторы матрицы...
Напишите программу, пожалуйста. Заполнить матрицу случайными числами....


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru