0 / 0 / 0
Регистрация: 03.12.2019
Сообщений: 76
1

Массив: Заполнить квадратную матрицу порядка n, записывая элементы в нее по спирали против часовой стрелки

06.03.2020, 10:07. Показов 966. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Составить программу которая заполняет квадратную матрицу порядка n натуральными числами 1,2,3,n2,записывая их в нее по спирали против часовой стрелки
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.03.2020, 10:07
Ответы с готовыми решениями:

Заполнить квадратную матрицу порядка n натуральными числами, записывая их в нее "по спирали"
Составить программу, которая заполняет квадратную матрицу порядка n натуральными числами 1, 2, 3,...

Заполнить матрицу по спирали против часовой стрелки
помогите поменять циклы в коде и сделать такую спираль: 1 32 31 30 29 28 27 26 25 2 33 56 55 54...

Заполнить матрицу по спирали против часовой стрелки
Ребят,помогите пожалуйста. Нужно заполнить матрицу числами по спирали против часовой стрелки....

Заполнить матрицу множеством натуральных чисел по спирали против часовой стрелки
заполнить матрицу NxN множество натуральных чисел по спирали против часовой стрелке по VBA

4
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
06.03.2020, 10:43 2
Например так.
Delphi
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
procedure TForm1.Button1Click(Sender: TObject);
var a:array of array of integer;
    n,i:integer;
    x,y,number,add,direction:integer;
begin
//вводим n например от 3 до 10
if not TryStrToInt(Edit1.Text,n)or not(n in [3..20]) then
 begin
  Showmessage('Неверно введен размер');
  Edit1.Clear;
  Edit1.SetFocus;
  exit
 end;
SetLength(a,n,n);
//Заполняем матрицу спиралью из ячейки [0,0] против часовой стрелки
x:=0; //столбец
y:=-1; //строка
number:=1;//число в ячейке
Add:=n; //текущая длина пути от n до 1
direction:=1;//направление движения 1-вправо и вниз
              //-1 влево и вверх
while add<>0 do
 begin
  i:=0;
  while i<>Add do
   begin
    y:=y+direction;
    a[y,x]:=number;
    number:=number+1;
    i:=i+1;
   end;
  i:=0;
  Add:=Add-1;
  while (i<>Add) do
   begin
    x:=x+direction;
    a[y,x]:=number;
    number:=number+1;
    i:=i+1;
   end;
 direction:=-direction;
end;
StringGrid1.ColCount:=n;
StringGrid1.RowCount:=n;
for y:=0 to n-1 do
for x:=0 to n-1 do
StringGrid1.Cells[x,y]:=inttostr(a[y,x]);
end;
end.
0
0 / 0 / 0
Регистрация: 03.12.2019
Сообщений: 76
20.03.2020, 10:44  [ТС] 3
Где строчка в коде, которая считывает информацию с Edit'а !!!!!!?????
Я студентка, я не шарю.
0
Почетный модератор
64304 / 47599 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
20.03.2020, 11:17 4
строка 7
Delphi
1
if not TryStrToInt(Edit1.Text,n)or not(n in [3..20]) then
Читаем с Эдита с проверкой.
Если написано не число или не от 3 до 20 то сообщаем об ошибке и вводим другое.
0
3050 / 1668 / 657
Регистрация: 19.03.2019
Сообщений: 5,365
20.03.2020, 11:22 5
Цитата Сообщение от missfortune Посмотреть сообщение
Где строчка в коде, которая считывает информацию с Edit'а !!!!!!?????
настолько всё плохо, что даже не можешь в коде найти строчку, где упоминается Edit ?!

вот тут
Цитата Сообщение от Puporev Посмотреть сообщение
Delphi
1
if not TryStrToInt(Edit1.Text,n)or not(n in [3..20]) then
тут в одной строчки и проверить Edit1, что там целое число и получить из Edit1 значение n и проверить, что n входит в диапазон 3..20
0
20.03.2020, 11:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.03.2020, 11:22
Помогаю со студенческими работами здесь

Заполнить двумерный массив цифрами по спирали, против часовой стрелки
Доброго времени суток. Вот задание : Заполнить двумерный массив цифрами по спирали, против...

Массив A[2*n+1][2*n+1] заполнить по спирали против часовой стрелки, начиная из центра
Можете пожалуйста помочь, я должен решить задачки и вот одна из них: Дано число n. Создайте...

Заполнить матрицу по спирали, начинающейся в левом верхнем углу, против часовой стрелки (+ блок схема)
Матрицу m x n заполнить натуральными числами от 1 до mn по спирали, начинающейся в левом верхнем...

Вывести содержимое файла в матрицу по спирали против часовой стрелки
необходимо считывать из файла символ и заносить его в матрицу по спирали против часовой стрелки, не...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

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