В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
morozhenka05
morozhenka05
24.03.2021 02:43 •  Информатика

Прокомментируте код, ) int main() { int n = 5, x = n - 1, y = n, d = -1, r = 25, a[10][10]; for (int i = x; i > = 0; d *= -1) { for (int j = i; j > = 0; --j) a[x][y += d] = r--; for (int j = --i; j > = 0; --j) a[x += d][y] = r--; } // вывод for (int i = 0; i

Показать ответ
Ответ:
olgagk1
olgagk1
06.10.2020 21:39
int n = 5, x = n - 1, y = n, d = -1, r = 25, a[10][10]; // тут собственно сама
матрица, n - длина
// х,у - координаты ячейки, d - шаг =+1 при движении вправо и вниз, = -1
при движении влево и вверх
// r - число в ячейке
for (int i = x; i >= 0; d *= -1) // тут меняем знак
{
for (int j = i; j >= 0; --j) a[x][y += d] = r--; // двигаемся вправо
for (int j = --i; j >= 0; --j) a[x += d][y] = r--; // двигаемся вверх
}
for (int i = 0; i<n; i++) // тут все просто циклы для вывода матрицы
{
for (int j = 0; j<n; j++)
{
printf("%3d ", a[i][j]);
}
cout << "\n";
}
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота