Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ввести элементы двумерного массива https://www.cyberforum.ru/ cpp-beginners/ thread1854237.html
Ввести элементы двумерного массива через цикл for, если известна его размерность. Поделитесь кодом. Поскольку это, как я понимаю, не катит: for (int i = 0; i < 4; i++) ...
C++ Вывести информацию о худшем по оценкам предмету
Каждый элемент входного файла имеет структуру <Фамилия>, <номер групы>, <оц1>, <оц2>, <оц3>. Фамилия должна быть не больше 12 символов, номер группы - целое число от 101 до 116, каждая оценка это...
C++ Считать из файла вещественные числа и выяснить, действительно ли все они положительны https://www.cyberforum.ru/ cpp-beginners/ thread1854213.html
В файле data.dat хранится множество x0,x1...,x32 из 32 положительных вещественных чисел. Составьте программу которая считывает указанное множество и проверяет, действительно ли все эти элементы...
C++ Составить функцию для подсчёта средних арифметических чётных элементов линейных таблиц А[9] и В[7] Составить программу для подсчёта средних арифметических чётных элементов линейных таблиц А и В. Добавлено через 11 часов 58 минут Всё еще нужна ваша помощь. https://www.cyberforum.ru/ cpp-beginners/ thread1854204.html
Сумма отрицательных знаков в массиве C++
Что надо изменить в моем коде,что выдавало 2,а не 11112? Дан массив aa из nn целых чисел. Требуется определить, сколько раз меняется знак при следовании от начала массива к концу. Ноль считается...
C++ Неожиданное поведение программы: вместо вывода суммы чисел, на консоль всё время выводится ноль (цикл while) Программа запрашивает ввод числа. После каждого введенного значения программа должна выдавать накопленную сумму введенных значений. Программа должна завершаться при вводе 0. #include <iostream> ... https://www.cyberforum.ru/ cpp-beginners/ thread1854202.html
C++ Реализовать функцию для вычисления выражения по заданной формуле https://www.cyberforum.ru/ cpp-beginners/ thread1854201.html
Составьте программу вычисления числа сочетаний из N по М. Число сочетаний определяется по формуле: с=n!/m!*(n-m)! , где n!=1∙2∙3∙…∙n. Вычисление факториала оформить в виде...
Подсчитать в строке количество слов с нечетной длиной C++
с клавиатуры вводится текстовое поле: составить программу которая считает количество слов с непарной длинной,выводит на дисплей частоту вхождения каждой буквы, удаляет текст который находится в...
C++ Реализовать решение уравнения с помощью цикла for https://www.cyberforum.ru/ cpp-beginners/ thread1854193.html
Всем привет, мне нужно сделать программу которая решить уравнение 7a2-9c+7b2=0 с помощью цикла for, у меня получилось написать только через цикл do while, а через for никак не получается. Вот пример...
C++ Посчитать количество чисел в программе Что написать в тело цикла, для того чтобы программа считала количество цифр в числе, которое заранее введено пользователем? https://www.cyberforum.ru/ cpp-beginners/ thread1854180.html
C++ Задачи на упорядочивание двумерного массива
Нужно упорядочить все элементы двумерного массива по возрастанию. Программа не запускается, никак не могу найти ошибку. void z7 (int m, int n) { int f,k,min,i,j,v,d,l,x,z,q; int **a=new int...
C++ Как реализовать срабатывание Callback функции при событии? https://www.cyberforum.ru/ cpp-beginners/ thread1854175.html
Совсем запутался. Вот есть у меня callback функция предположим. Она принимает своим параметром другую функцию, в которой прописан нужный мне код. Я хочу чтобы callback функция запускала свою...
257 / 234 / 185
Регистрация: 02.04.2016
Сообщений: 898
19.11.2016, 12:43 0

Заполнить матрицу по спирали - C++ - Ответ 9788248

19.11.2016, 12:43. Показов 1741. Ответов 1
Метки (Все метки)

Лучший ответ Сообщение было отмечено snow9765 как решение

Решение

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
int main() {
 
    int n;
    cin >> n;
    int ** a = new int*[n];
    for (int i = 0; i < n; ++i)
        a[i] = new int[n];
    int i, j;
    if (n % 2 == 0)
        i = n / 2 - 1;
    else
        i = n / 2;
    j = n / 2;
    int cnt = 0;
    int d = 0;
    a[i][j] = ++cnt;
    while (i < n && j < n)
    {
        ++d;
        for (int b = 0; b < d; ++b)
        {
            if (i + 1 < n)
                a[++i][j] = ++cnt;
            else
                goto m;
        }
        for (int b = 0; b < d; ++b)
                a[i][--j] = ++cnt;
        ++d;
        for (int b = 0; b < d; ++b)
        {
            if (i - 1 >= 0)
                a[--i][j] = ++cnt;
            else
                goto m;
        }
        for (int b = 0; b < d; ++b)
                a[i][++j] = ++cnt;
    }
    m:
    for (int i = 0; i < n; ++i)
    {
        for (int j = 0; j < n; ++j)
            cout << setw(2) << a[i][j] << " ";
        cout << endl;
    }
    for (int i = 0; i < n; ++i)
        delete a[i];
    delete a;
    return 0;
}


Вернуться к обсуждению:
Заполнить матрицу по спирали C++
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.11.2016, 12:43
Готовые ответы и решения:

Заполнить матрицу по спирали
Помогите заполнить матрицу по спирали, но нужно это сделать при помощи функции с заданным...

Заполнить матрицу по спирали

Заполнить матрицу по спирали
Как заполнить одномерный массив c++ по спирали?

Заполнить матрицу по спирали
Через ранд формируются элементы массива размер n^2 .Нужно по спирали заполнить матрицу n*n по...

1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.11.2016, 12:43
Помогаю со студенческими работами здесь

Заполнить матрицу nxm по спирали
Заполнить матрицу nxm Помогите с кодом

Заполнить матрицу из центра по спирали
Пользователь должен ввести размерность матрици!Матрица квадратная!А программа должна заполнить её...

Заполнить квадратную матрицу по спирали
Одномерный: В заданном целочисленном массиве R(9) определить индекс наибольшего из нечетных по...

Заполнить матрицу змейкой по спирали
Необходимо создать змейку типа 1 2 3 4 5 6 36 35 34 33 32 7 19 20 21 22 31 8 18 25 24...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru