Закономерность между номером диагонали, ее
Таблица 2.1. Закономерность между номером диагонали, ее уравнением
и координатами начальной и конечной точек
|
|
|
|
|
|
|
|
Номер Номера начальной диагонали и конечной точек
|
Координаты начальной и конечной точек
|
|
|
nDiag
|
nBeg
|
nEnd
|
(хВеg, уВеg)
|
(xEnd, yEnd)
|
|
|
0
|
0
|
0
|
(0,0)
|
(0,0)
|
|
|
1
|
1
|
2
|
(1,0)
|
(0,1)
|
|
|
2
|
3
|
5
|
(0,2)
|
(2,0)
|
|
|
3
|
6
|
9
|
(3,0)
|
(0,3)
|
|
|
4
|
10
|
14
|
(0,4)
|
(4,0)
|
|
|
5
|
15
|
20
|
(5,0)
|
(0,5)
|
|
|
6
|
21
|
27
|
(0,6)
|
(6,0)
|
|
|
7
|
28
|
35
|
(7,0)
|
(0,7)
|
|
|
8
|
36
|
44
|
(0,8)
|
(8,0)
|
|
|
9
|
45
|
54
|
(9,0)
|
(0,9)
|
|
|
10
|
55
|
65
|
(0,10)
|
(10,0)
|
|
|
|
|
|
|
|
|
По содержимому табл. 2.1 можно установить следующие факты:
nEnd = nBeg + nDiag nBeg(nDiag-t-l) = nEnd(nDiag) + 1
Если nDiag -- четное, то координаты начальной точки — (0, nDiag) и при перемещении по диагонали х уменьшается, а у возрастает. В противном случае начальная точка имеет координаты (noiag, 0) и при перемещении по диагонали х возрастает, а у уменьшается.
Ниже приводятся тексты программ, определяющие номера смежных точек для точки с заданным номером. Для уменьшения количества передаваемых параметров характеристики диагонали вынесены в глобальные переменные.
Массивы dx и dy предназначены для определения координат смежных точек, количество которых может варьироваться от трех (для точки с номером 0) или пяти (для начальной и конечной точек диагонали) до восьми (в случае внутренних точек). Анализ того, какая из восьми возможных точек является допустимой, вынесен в процедуру nextpoint. Она проверяет принадлежность точки первому квадранту, восстанавливает по координатам порядковый номер допустимой точки и выводит его на экран.
Программа 2_31.bas
DECLARE SUB NEXTPOINT (X&, Y&)
DIM nDiag AS LONG 'номер диагонали
DIM xBeg AS LONG, yBeg AS LONG 'начальная точка на диагонали
DIM nPoints AS LONG 'количество точек на диагонали
DIM nBeg AS LONG 'номер начальной точки на диагонали
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий