Реклама / ООО «ИЗОЛПРОЕКТ» / ИНН: 7725566484 | ERID: 2Vtzqv3ymec
IPB IPB
Проектирование, монтаж, наладка, сервис


Здравствуйте, гость ( Вход | Регистрация )

- Рекомендации АВОК 5.5.1-2023
«Системы противодымной вентиляции жилых и общественный зданий»

- Рекомендации АВОК 7.8.3-2023
«Проектирование инженерных систем лабораторий»

- Рекомендации АВОК 7.10-2023
«Здания жилые и общественные. Защита от шума и вибрации инженерного оборудования»

АВОК в соц. сетях
ИНН: 7714824045 | erid: 2Vtzqws48Fs
> Заполните прямоугольный массив числами в С++, Заполните прямоугольный массив числами
327
сообщение 8.12.2019, 16:25
Сообщение #1





Группа: Участники форума
Сообщений: 1240
Регистрация: 23.2.2009
Из: Московская область
Пользователь №: 29574



Ребята. помогите моему студенту плиз. Ну и мне интересно стало.

По условиям ТЗ нужно заполнить прямоугольный массив натуральными числами.
Поиск решения привёл к такому:


#include <iostream>
using namespace std;

int main()
{
int const n=11;
int A[n][n];
int i=1,j,k,p=n/2;
for(k=1;k<=p;k++)/*Цикл по номеру витка*/
{
for (j=k-1;j<n-k+1;j++) A[k-1][j]=i++;/*Определение значений верхнего гор столбца*/
for (j=k;j<n-k+1;j++) A[j][n-k]=i++;/* --//-- По правому вертикальному столбцу*/
for (j=n-k-1;j>=k-1;--j) A[n-k][j]=i++;/* --//-- по нижнему горизонтальному столбцу*/
for (j=n-k-1;j>=k;j--) A[j][k-1]=i++;/* --//-- по левому вертикальному столбцу*/
}
if (n%2==1) A[p][p]=n*n;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
{
printf(" %4d ",A[i][j]);
if(j==n-1) printf("\n");
}
}

Разобрался, что массив 11х11 (прямоугольник не получается сделать), что i- это начало отсчёта и значение первого числа.
По остальному непонятно. Что такое, и откуда взялись: k,j,p.

Можно тезисно, или где про это почитать? Для себя нарисовал систему координат, но сын говорит, что так не верно рассуждать. Мне логика непонятна - но я и не программер ни разу.....
Большое спасибо.
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения



Добавить ответ в эту темуОткрыть тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

Реклама
ООО «Арктика групп» ИНН: 7713634274



ООО "Русич" ИНН 9721068883 / ЕРИД 2VtzqxaTTsx

Реклама: ООО «АйДи-Электро» | ИНН 6670013662 | ERID: 2VtzqxXWZLZ
ООО «УНИСПЛИТ» ИНН: 6453155081 erid:2VtzqvoGYgn
-

Последние сообщения Форума






RSS Текстовая версия Сейчас: 26.9.2024, 21:30