/
MaestroN
/
Eltex_Homework
Обзор
Документация
Войти
/
MaestroN
/
Eltex_Homework
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Task_2/task2.4.c
53 строки
2 KB
nikita_shub
Добавление второго и третьего задания
11 ноя 2024, 17:15
11 ноя 2024, 17:15
fab111e
Код
Авторство
О чём код?
#include <stdio.h> #define N 5 // Определение размера матрицы void fill_spiral(int matrix[N][N]); void print_matrix(int matrix[N][N]); int main() { int matrix[N][N] = {0}; // Инициализация матрицы нулями fill_spiral(matrix); // Заполнение матрицы по спирали print_matrix(matrix); // Вывод матрицы return 0; } void fill_spiral(int matrix[N][N]) { int value = 1; // Начальное значение для заполнения int top = 0, bottom = N - 1, left = 0, right = N - 1; // Границы матрицы while (value <= N * N) { // Заполнение верхней строки for (int i = left; i <= right; i++) { matrix[top][i] = value++; } top++; // Заполнение правого столбца for (int i = top; i <= bottom; i++) { matrix[i][right] = value++; } right--; // Заполнение нижней строки for (int i = right; i >= left; i--) { matrix[bottom][i] = value++; } bottom--; // Заполнение левого столбца for (int i = bottom; i >= top; i--) { matrix[i][left] = value++; } left++; } } void print_matrix(int matrix[N][N]) { for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { printf("%d ", matrix[i][j]); } printf("\n"); } }