Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
Рассл
0 / 0 / 0
Регистрация: 21.11.2013
Сообщений: 16
1

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

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

Заполнить матрицу по спирали в StrinGrid , +задать размерность матрицы.
Спираль типа
5 6 7
4 9 8
3 2 1
помогите срочно заранее благодарю)))
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.12.2014, 14:43
Ответы с готовыми решениями:

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

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

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

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

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

2
Puporev
Модератор
54684 / 42103 / 29071
Регистрация: 18.05.2008
Сообщений: 99,357
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
Рассл
0 / 0 / 0
Регистрация: 21.11.2013
Сообщений: 16
28.12.2014, 16:55  [ТС] 3
Puporev, Огромное спасибо! ! !
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.12.2014, 16:55

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

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

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


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru