Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
1 / 1 / 0
Регистрация: 21.11.2013
Сообщений: 16
1

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

28.12.2014, 14:43. Показов 3118. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Заполнить матрицу по спирали в StrinGrid , +задать размерность матрицы.
Спираль типа
5 6 7
4 9 8
3 2 1
помогите срочно заранее благодарю)))
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.12.2014, 14:43
Ответы с готовыми решениями:

Заполнить квадратную матрицу по спирали
Квадратную матрицу размерности N ( N - нечетное число) заполнить числами от 1 до N2 по спирали от...

Заполнить квадратную матрицу порядка N числами от 1 до N^2 по спирали и вывести в текстовый файл
Добрый день, друзья! У меня вот какой вопрос появился. Написал простейшую программу для создания...

Вывести новую матрицу,состоящую из элементов составленных при прохождении матрицы по спирали
Группой не можем решить :( Дана матрица a(n,m). Вывести новую матрицу,состоящую из элементов...

Получить целочисленную матрицу порядка 7, элементами которой являются числа 1, 2, …, 49, расположенные в ней по спирали.
День добрый помогите Люди добрые!!! Заранее спасибо. Получить целочисленную матрицу порядка 7,...

2
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
28.12.2014, 16:07 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
procedure TForm1.Button1Click(Sender: TObject);
var a:array of array of integer;
    m,k,r,i,j : integer;
begin
val(Edit1.Text,m,i);
if(i<>0)or(strtoint(edit1.Text)<2) then
 begin
  ShowMessage('Неверный ввод размера, повторите ввод');
  Edit1.Clear;
  Edit1.SetFocus;
  exit
 end;
StringGrid1.ColCount:=m;
StringGrid1.RowCount:=m;
Setlength(a,m,m);
r:=0;//расстояние от края до строки(столбца)
k:=0;//значение в ячейке 1...m*m
repeat
inc(r);
for i:=m-r downto r-1 do begin inc(k);a[m-r,i]:=k end;//влево
for i:=m-r-1 downto r-1 do begin inc(k);a[i,r-1]:=k end;//вверх
for i:=r to m-r do begin inc(k);a[r-1,i]:=k end; //вправо
for i:=r to m-r-1 do begin inc(k);a[i,m-r]:=k end; //вниз
until k=m*m;//дошли до центра
for i:=0 to m-1 do
for j:=0 to m-1 do
StringGrid1.Cells[j,i]:=IntToStr(a[i,j]);
end;
1
1 / 1 / 0
Регистрация: 21.11.2013
Сообщений: 16
28.12.2014, 16:55  [ТС] 3
Puporev, Огромное спасибо! ! !
0
28.12.2014, 16:55
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.12.2014, 16:55
Помогаю со студенческими работами здесь

Заполнить матрицу
Заполнить матрицу nxn(1&lt;=n&lt;=10)следующим образом: элементам на периметре (в первой и последней...

Заполнить матрицу по правилу
Помогите пожалуйста в Delphi! заполнить массив n*n по правилу:

Матрицу заполнить по правилу
Заполнить матрицу натуральными числами 1.. N*N, где N -размер матрицы. В программе предусмотреть...

Заполнить матрицу по правилу
Задание такое, что нужно заполнить такую матрицу: Сам я учу С++ и в Delphi полный ноль,...


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

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