Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Askar2008
13 / 13 / 1
Регистрация: 04.03.2009
Сообщений: 154
#1

Отобразить симметрично относительно вертикальной оси секторы матрицы - C++

22.02.2010, 15:19. Просмотров 670. Ответов 4
Метки нет (Все метки)

Всем привет! Не могу решить задачу на языке Турбо С: Дана матрица 9 х 9, нужно отобразить симметрично относительно вертикальной оси секторы матрицы, которые лежат влево и вправо от главной и побочной диагоналей. В прикрепленном файле, ячейки которые выделены желтым цветом нужно вывести на экран. Заранее благодарю!
0
Миниатюры
Отобразить симметрично относительно вертикальной оси секторы матрицы  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.02.2010, 15:19
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Отобразить симметрично относительно вертикальной оси секторы матрицы (C++):

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

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

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

Отобразить симметрично относительно вертикальной оси секторы матрицы - C++
Всем ПРИВЕТ! Помогите пожалуйста с задачкой ...=) Заполнить матрицу А(10,10), случайными числами. Отобразить симметрично относительно...

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

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

4
M128K145
Эксперт С++
8297 / 3517 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
22.02.2010, 21:20 #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
#include <iostream>
int main()
{
    const int n = 7;
    int i, j;
    int matr[n][n];
    for(i = 0; i < n; ++i)
        for(j = 0; j < n; ++j)
            matr[i][j] = (i + 1) * 10 + j + 1;
    for(i = 0; i < n; ++i, std::cout<<std::endl)
        for(j = 0; j < n; ++j)
            std::cout<<matr[i][j]<<' ';
 
    std::cout<<std::endl;
    for(i = 0; i <= n>>1; ++i)
        for(j = 0; j <= i; ++j)
            matr[i][j] ^= matr[i][n - j - 1] ^= matr[i][j] ^= matr[i][n - j - 1];
    for(i = (n>>1) + 1; i < n; ++i)
        for(j = 0; j < n - i; ++j)
            matr[i][j] ^= matr[i][n - j - 1] ^= matr[i][j] ^= matr[i][n - j - 1];
 
    for(i = 0; i < n; ++i, std::cout<<std::endl)
        for(j = 0; j < n; ++j)
            std::cout<<matr[i][j]<<' ';
 
    return 0;
}
1
Askar2008
13 / 13 / 1
Регистрация: 04.03.2009
Сообщений: 154
23.02.2010, 05:39  [ТС] #3
M128K145 , Вы наверно не правельно поняли, задание заключается в следующем: нужно вывести числа матрицы которые отсекаются главной и побочной диагоналями, получается нужно вывести те числа которые попадают в закрашенную область желтого цвета(2 треугольника). А то что закрешено белым цветом выводить не нужно. Надеюсь на Вашу помощь, 6 лабораторных сдал, а с этой уже 4 день мучаюсь =(
0
valeriikozlov
Эксперт С++
4673 / 2499 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
23.02.2010, 05:51 #4
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Чуть поправил код M128K145:
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
#include <iostream>
int main()
{
    const int n = 7;
    int i, j;
    int matr[n][n];
    for(i = 0; i < n; ++i)
        for(j = 0; j < n; ++j)
            matr[i][j] = (i + 1) * 10 + j + 1;
    for(i = 0; i < n; ++i, std::cout<<std::endl)
        for(j = 0; j < n; ++j)
            std::cout<<matr[i][j]<<' ';
 
    std::cout<<std::endl;
    for(i = 0; i<n; ++i)
    {
        for(j = 0; j<n; ++j)
        {
            if((j<i && i<n-1-j) || (j>i && i>n-1-j))
                std::cout<<matr[i][j]<<' ';
            else
                std::cout<<"   ";
        }
        std::cout<<std::endl;
    }        
 
    return 0;
}
1
Askar2008
13 / 13 / 1
Регистрация: 04.03.2009
Сообщений: 154
23.02.2010, 05:58  [ТС] #5
valeriikozlov и M128K145 спасибо огромное, выручили!
0
23.02.2010, 05:58
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.02.2010, 05:58
Привет! Вот еще темы с ответами:

Отобразить правую половину матрицы на левую зеркально симметрично относительно вертикальной оси - C++
как можно сделать такую матрицу использовав только цикла задача такая Заполнить матрицу случайными числами. Отобразить правую половину...

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

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

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


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

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

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