Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Den_Nick
1 / 1 / 0
Регистрация: 26.12.2016
Сообщений: 51
1

Повернуть матрицу против часовой стрелки

07.01.2017, 20:22. Просмотров 896. Ответов 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
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
62
63
64
65
// Программа_№5.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
#include <iostream>
#include <time.h>
using namespace std;
 
int main()
{
setlocale(LC_CTYPE, "rus"); // вызов функции настройки локали
    double x;
    double f;
    int array[100][100];
    int c[100];
    for (int i = 0; i < 100; i++)
        c[i] = 0;
    printf("Введите N: ");
    scanf_s("%lf", &f);
 
    while (f <= 0 || f > 30 || round(f) != f)
    {
        printf("Вводите N cнова: ");
        scanf_s("%lf", &f);
    }
    int n = (int)f;
    for(int i = 0; i < n; ++i)
    {
        for(int j = 0; j < n; ++j)
           cout << a[i][j] << "\t";
    cout << endl;
    }
}
 
 void RotateMatrix(int **matrix, int **ret, int n)
        {
            for (int i = 0; i < n; ++i)
               for (int j = 0; j < n; ++j)
                     ret[n - j - 1][i] = matrix[i][j]; // поворот матрицы против часовой стрелки
        }
int main()
{
    setlocale(LC_CTYPE, "rus"); // вызов функции настройки локали
    srand(time(NULL));
    int n = 4;
    int **array;
    array = new int *[n];
    
    int **ret;
    ret = new int *[n];
    for(int i = 0; i < n; ++i){
       array[i]= new int [n];
       ret[i]= new int [n];
    }
    for(int i = 0; i < n; ++i)
        for(int j = 0; j < n; ++j)
            array[i][j] = rand() % 10;
    cout << "Матрица:\n" << endl;
    print(n,array);
    RotateMatrix(array,ret,4);
    cout << "\nМатрица повёрнутая против часовой стрелки:\n" << endl;
    print(n,ret);
    system("pause");
    return 0;
}
Добавлено через 13 минут
Повёрнутую часть матрицы нужно закрасить цветом.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.01.2017, 20:22
Ответы с готовыми решениями:

Повернуть матрицу на угол 90° против часовой стрелки
Дана квадратная матрица A порядка M. Повернуть ее на угол 90° в положительном направлении, то есть...

Повернуть матрицу с случайными числами на 90 градусов против часовой стрелки
Задание звучит так: Заполнить матрицу случайными числами. Развернуть матрицу на 90o против часовой...

Повернуть матрицу на 180 градусов против часовой стрелки, не создавая дополнительных массивов
Имеется квадратная матрица (не менее, чем 5 на 5). Ввести элементы, распечатать. Повернуть на 180...

Повернуть массив на 90˚ против часовой стрелки
Здравствуйте. Помогите пожалуйста решить задание по c++. Нужно повернуть массив на 90˚ против...

Как повернуть элементы матрицы на 90 градусов против часовой стрелки?
ЗАДАНИЕ: Дана матрица. Повернуть все её элементы вокруг центра на 90 градусов против часовой...

3
likehood
965 / 814 / 390
Регистрация: 25.12.2016
Сообщений: 2,691
Завершенные тесты: 3
07.01.2017, 20:28 2
Лучший ответ Сообщение было отмечено gru74ik как решение

Решение

Почему два мейна?
1
Den_Nick
1 / 1 / 0
Регистрация: 26.12.2016
Сообщений: 51
07.01.2017, 20:36  [ТС] 3
Один для ввода и вывода N. А второй для работы с матрицей.
0
sourcerer
Модератор
Эксперт CЭксперт С++
4863 / 2044 / 325
Регистрация: 20.02.2013
Сообщений: 5,545
Записей в блоге: 24
Завершенные тесты: 1
07.01.2017, 20:45 4
Den_Nick, два мэйна - это как ребёнок с двумя головами. Редко, но, наверное, бывает. Хотя нормальным назвать это весьма затруднительно.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.01.2017, 20:45

Необходимо повернуть все элементы матрицы, кроме диагональных, против часовой стрелки на 90 градусов
Здравствуйте! Необходимо повернуть все элементы матрицы, кроме диагональных, против часовой стрелки...

Заполнить матрицу случайными числами. Развернуть матрицу на 90(градусов) против часовой стрелки
Заполнить матрицу случайными числами. Развернуть матрицу на 90o против часовой стрелки

Заполнить матрицу с середины против часовой стрелки
Нужно заполнить квадратную матрицу(то есть размер nXn) нужно заполнить по спирали, начиная с центра...


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

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

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