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

Заполнить матрицу по заданному образцу - C++

Восстановить пароль Регистрация
 
Artyomdoc
0 / 0 / 0
Регистрация: 10.01.2013
Сообщений: 58
03.06.2014, 23:19     Заполнить матрицу по заданному образцу #1
Здравствуйте. Помогите пожалуйста с задачей, уже несколько дней сижу,ничего не получается.

Задано число N(может быть четным или нечетным). Заполнить элементы массива по заданному образцу. То есть нужен некоторый алгоритм который заполняет элементы массива по особенному , после того как введем число N с клавиатуры Найти несколько вариантов и найти самый быстрый.
образец: при вводе N=5 массив заполняется следующим образом
Код
 1   5   13    6    2
12  17   21   18    7
16  24   25   22   14
11  20   23   19    8
 4  10   15    9    3
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.06.2014, 23:19     Заполнить матрицу по заданному образцу
Посмотрите здесь:

C++ Сформулировать квадратную матрицу порядка n по заданному образцу...
C++ Сформировать квадратную матрицу по заданному образцу
C++ Сформировать матрицу по заданному образцу
Сформировать квадратную матрицу порядка n по заданному образцу C++
сформировать матрицу по заданному образцу C++
Сформировать квадратную матрицу порядка n по заданному образцу C++
Сформировать квадратную матрицу порядка n по заданному образцу C++
C++ Сформировать квадратную матрицу порядка n по заданному образцу

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
GuGo1991
267 / 261 / 93
Регистрация: 02.08.2012
Сообщений: 609
04.06.2014, 03:56     Заполнить матрицу по заданному образцу #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
#include <iostream>
#include <conio.h>
#include <iomanip>
 
int main()
{
    int N, value = 0, h = 0, w = 0;
    std::cout << "Type N: ";
    std::cin >> N;
    std::cout << "\n\n";
    
    int** M = new int*[N];
    for(int i = 0; i < N; i++)
        M[i] = new int[N];
    
    for(int i = 0; i < N; i++)
        for(int j = 0; j < N; j++)
            M[i][j] = 0;
    
    for(int i = 0; i < N; i++)
    {
        for(int j = 0; j < N; j++)
        {
            if(M[i][j] == 0) M[i][j] = ++value;
            if(M[i][N - 1 - j] == 0) M[i][N - 1 - j] = ++value;
            if(M[N - 1 - i][N - 1 - j] == 0) M[N - 1 - i][N - 1 - j] = ++value;
            if(M[N - 1 - i][j] == 0) M[N - 1 - i][j] = ++value;
            
            if(M[i][(j + 1 + N) % N] == 0) M[i][(j + 1 + N) % N] = ++value;
            
            if(M[i][abs(N - 1 - j - 1)] == 0) M[i][abs(N - 1 - j - 1)] = ++value;
            if(M[(j + 1 + N) % N][N - 1 - i] == 0) M[(j + 1 + N) % N][N - 1 - i] = ++value;
            
            if(M[abs(N - 1 - j - 1)][N - 1 - i] == 0) M[abs(N - 1 - j - 1)][N - 1 - i] = ++value;
            if(M[N - 1 - i][abs(N - 1 - j - 1)] == 0) M[N - 1 - i][abs(N - 1 - j - 1)] = ++value;
            
            if(M[N - 1 - i][(j + 1 + N) % N] == 0) M[N - 1 - i][(j + 1 + N) % N] = ++value;
            if(M[abs(N - 1 - j - 1)][i] == 0) M[abs(N - 1 - j - 1)][i] = ++value;
            
            if(M[(j + 1 + N) % N][i] == 0) M[(j + 1 + N) % N][i] = ++value;
        }
    }
    
    for(int i = 0; i < N; i++)
    {
        for(int j = 0; j < N; j++)
            std::cout << std::setw(4) << M[i][j];
        std::cout << "\n\n";
    }
    
    for(int i = 0; i < N; i++)
        delete [] M[i];
    delete [] M;
    
    std::cout << "\nOperation succeeded\n";
    getch();
    return 0;
}
Yandex
Объявления
04.06.2014, 03:56     Заполнить матрицу по заданному образцу
Ответ Создать тему
Опции темы

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