рдкрд┐рдЫрд▓реЗ рднрд╛рдЧреЛрдВ рдореЗрдВ (
рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рд╡рд┐рд░рд▓ рд╕рд░рдгрд┐рдпрд╛рдБ рдЕрдХреНрд╕рд░ рдЗрддрдиреА рдмрдбрд╝реА рд╣реЛрддреА рд╣реИрдВ рдХрд┐ рд╕рдорд╛рди рддрддреНрд╡реЛрдВ рдХреЗ рд╕рд╛рде рд╕реНрдореГрддрд┐ рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╡рд┐рд░рд▓ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдХрд┐ рд╕рдорд╛рди рдорд╛рдиреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдкрд░ рдореЗрдореЛрд░реА рдмрд░реНрдмрд╛рдж рди рд╣реЛред
рдХреБрдЫ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ, рд╡рд┐рд░рд▓ рд╕рд░рдгрд┐рдпрд╛рдБ рднрд╛рд╖рд╛ рдореЗрдВ рд╣реА рд╢рд╛рдорд┐рд▓ рд╣реЛрддреА рд╣реИрдВ,
рд╡рд┐рд░рд▓ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреНрд▓реЛрдмрд▓ рдЕрдЪреНрдЫреЗ рдЙрдореНрдореАрджрд╡рд╛рд░ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐:
- рд╡реЗ рдХреЗрд╡рд▓ рдХреБрдЫ рдиреЛрдбреНрд╕ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рдиреЛрдбреНрд╕ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ;
- рдХрд┐рд╕реА рдиреЛрдб рдХреЗ рдорд╛рди рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдмреЗрд╣рдж рд╕рдорд╛рди рд╣реИ рдХрд┐ рдХрд┐рддрдиреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛рдПрдВ рдмрд╣реБрдЖрдпрд╛рдореА рд╕рд░рдгреА рддрддреНрд╡ рддрдХ рдкрд╣реБрдВрдЪ рд▓рд╛рдЧреВ рдХрд░рддреА рд╣реИрдВред
Set ^a(1, 2, 3)=5 Write ^a(1, 2, 3)
- рдЧреНрд▓реЛрдмрд▓ рдбреЗрдЯрд╛ рднрдВрдбрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рдирд┐рдореНрди-рд╕реНрддрд░реАрдп рд╕рдВрд░рдЪрдирд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕рдореЗрдВ рдЙрддреНрдХреГрд╖реНрдЯ рдЧрддрд┐ рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ рд╣реИрдВ (рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рд╕реИрдХрдбрд╝реЛрдВ рд╣рдЬрд╛рд░реЛрдВ рд╕реЗ рд▓реЗрдХрд░ рд▓рд╛рдЦреЛрдВ рд▓реЗрдирджреЗрди рддрдХ, рдиреАрдЪреЗ рджреЗрдЦреЗрдВ)ред
1 )
рдЪреВрдБрдХрд┐ рд╡реИрд╢реНрд╡рд┐рдХ рдПрдХ рд╕рддрдд рд╕рдВрд░рдЪрдирд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрди рдкрд░ рд╡рд┐рд░рд▓ рд╕рд░рдгрд┐рдпрд╛рдБ рдмрдирд╛рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ рдЬрдм рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рдЬреНрдЮрд╛рдд рд╣реЛ рдХрд┐ RAM рдХреА рдорд╛рддреНрд░рд╛ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛрдЧреАред
рдпрджрд┐ рдХрд┐рд╕реА рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╕реЗрд▓ рддрдХ рдкрд╣реБрдВрдЪ рдмрдирд╛рдИ рдЬрд╛рддреА рд╣реИ рддреЛ рд╡рд┐рд░рд▓ рд╕рд░рдгреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдЧреБрдгреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреБрдЫ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди рд╡рд╛рдкрд╕ рдХрд░рдирд╛ рд╣реИред
рдЗрд╕реЗ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
SET a = $GET(^a(x,y,z), defValue)
рдХрд┐рди рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рд░рд▓ рд╕рд░рдгрд┐рдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдФрд░ рдЧреНрд▓реЛрдмрд▓реНрд╕ рдХреИрд╕реЗ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
рдЖрд╕рдиреНрдирддрд╛ (рдХрдиреЗрдХреНрдЯрд┐рд╡рд┐рдЯреА) рдореИрдЯреНрд░рд┐рдХреНрд╕
рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдЧреНрд░рд╛рдлрд╝ рдЬрд┐рддрдирд╛ рдмрдбрд╝рд╛ рд╣реЛрдЧрд╛, рдореИрдЯреНрд░рд┐рдХреНрд╕ рдореЗрдВ рдЙрддрдиреЗ рд╣реА рдЕрдзрд┐рдХ рд╢реВрдиреНрдп рд╣реЛрдВрдЧреЗред рдпрджрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣рдо рдПрдХ рд╕реЛрд╢рд▓ рдиреЗрдЯрд╡рд░реНрдХ рдЧреНрд░рд╛рдлрд╝ рд▓реЗрддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдПрдХ рд╕рдорд╛рди рдореИрдЯреНрд░рд┐рдХреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕рдореЗрдВ рд▓рдЧрднрдЧ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╢реВрдиреНрдп рд╢рд╛рдорд┐рд▓ рд╣реЛрдВрдЧреЗ, рдпрд╛рдиреАред рдПрдХ рд╡рд┐рд░рд▓ рд╕рд░рдгреА рд╣реЛрдЧреА.
Set ^m(id1, id2) = 1
Set ^m(id1, id3) = 1
Set ^m(id1, id4) = 1
Set ^m(id1) = 3
Set ^m(id2, id4) = 1
Set ^m(id2, id5) = 1
Set ^m(id2) = 2
....
рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рд╣рдо рд╡рд┐рд╢реНрд╡ рд╕реНрддрд░ рдкрд░ рдмрдЪрдд рдХрд░рддреЗ рд╣реИрдВ ^m рдХрдиреЗрдХреНрдЯрд┐рд╡рд┐рдЯреА рдореИрдЯреНрд░рд┐рдХреНрд╕, рд╕рд╛рде рд╣реА рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдкрд░ рдХрд┐рдирд╛рд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ (рдХреМрди рдХрд┐рд╕рдХреЗ рд╕рд╛рде рдорд┐рддреНрд░ рд╣реИ рдФрд░ рдорд┐рддреНрд░реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛)ред
рдпрджрд┐ рдЧреНрд░рд╛рдлрд╝ рдореЗрдВ рддрддреНрд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ 29 рдорд┐рд▓рд┐рдпрди рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реИ (рдпрд╣ рд╕рдВрдЦреНрдпрд╛ 8* рдХреЗ рдЧреБрдгрдирдлрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реА рдЬрд╛рддреА рд╣реИ)
рдмрд┐рдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде рд╣реЗрд░рдлреЗрд░ рдлрд╝рдВрдХреНрд╢рди рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
; ╤Г╤Б╤В╨░╨╜╨╛╨▓╨║╨░ ╨▒╨╕╤В╨░
SET $BIT(rowID, positionID) = 1
; ╨┐╨╛╨╗╤Г╤З╨╡╨╜╨╕╨╡ ╨▒╨╕╤В╨░
Write $BIT(rowID, positionID)
рд░рд╛рдЬреНрдп рдорд╢реАрди рд╕рдВрдХреНрд░рдордг рддрд╛рд▓рд┐рдХрд╛
рдЪреВрдБрдХрд┐ рдПрдХ рдкрд░рд┐рдорд┐рдд рдСрдЯреЛрдореЗрдЯрди рдХрд╛ рд╕рдВрдХреНрд░рдордг рдЧреНрд░рд╛рдл рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЧреНрд░рд╛рдл рд╣реИ, рддреЛ рдкрд░рд┐рдорд┐рдд рдСрдЯреЛрдореЗрдЯрди рдХреА рд╕рдВрдХреНрд░рдордг рддрд╛рд▓рд┐рдХрд╛ рд╡рд╣реА рдЖрд╕рдиреНрди рдореИрдЯреНрд░рд┐рдХреНрд╕ рд╣реИ рдЬрд┐рд╕рдХреА рдКрдкрд░ рдЪрд░реНрдЪрд╛ рдХреА рдЧрдИ рд╣реИред
рд╕реЗрд▓реНрдпреВрд▓рд░ рдЖрдЯреЛрдореЗрдЯрд╛
рд╕рдмрд╕реЗ рдкреНрд░рд╕рд┐рджреНрдз рд╕реЗрд▓реБрд▓рд░ рдСрдЯреЛрдореЗрдЯрди рд╣реИ
рд╕реНрдЯреАрдлрди рд╡реЛрд▓реНрдлреНрд░рд╛рдо рдХрд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рд╕реЗрд▓реБрд▓рд░ рдСрдЯреЛрдореЗрдЯрд╛ рд╣реИрдВ
рдпрд╣ рд╕рд┐рджреНрдз рд╣реЛ рдЪреБрдХрд╛ рд╣реИ рдХрд┐ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдХрд┐рд╕реА рднреА рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЛ рд╕реЗрд▓реБрд▓рд░ рдСрдЯреЛрдореЗрдЯрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╕реЗрд▓реБрд▓рд░ рдСрдЯреЛрдореЗрдЯрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдЧрддрд┐рд╢реАрд▓ рд╡рд╛рддрд╛рд╡рд░рдг рдФрд░ рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЛ рдореЙрдбрд▓ рдХрд░рдиреЗ, рдПрд▓реНрдЧреЛрд░рд┐рдердо рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдФрд░ рдЕрдиреНрдп рдЙрджреНрджреЗрд╢реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдпрджрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╡рд┐рд╢рд╛рд▓ рдХреНрд╖реЗрддреНрд░ рд╣реИ рдФрд░ рд╣рдореЗрдВ рд╕реЗрд▓реБрд▓рд░ рдСрдЯреЛрдореЗрдЯрди рдХреЗ рд╕рднреА рдордзреНрдпрд╡рд░реНрддреА рд░рд╛рдЬреНрдпреЛрдВ рдХреЛ рд░рд┐рдХреЙрд░реНрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЧреНрд▓реЛрдмрд▓реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред
рдирдХреНрд╢рд╛рдирд╡реАрд╕реА
рдЬрдм рд╡рд┐рд░рд▓ рд╕рд░рдгрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдмрд╛рдд рдЖрддреА рд╣реИ рддреЛ рдкрд╣рд▓реА рдмрд╛рдд рдЬреЛ рдореЗрд░реЗ рджрд┐рдорд╛рдЧ рдореЗрдВ рдЖрддреА рд╣реИ рд╡рд╣ рд╣реИ рдореИрдкрд┐рдВрдЧ рдХрд╛рд░реНрдпред
рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдкрд░ рдмрд╣реБрдд рд╕рд╛рд░реА рдЦрд╛рд▓реА рдЬрдЧрд╣ рд╣реЛрддреА рд╣реИред рдпрджрд┐ рдорд╛рдирдЪрд┐рддреНрд░ рдХреЛ рдмрдбрд╝реЗ рдкрд┐рдХреНрд╕реЗрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛рдП, рддреЛ рдкреГрдереНрд╡реА рдХреЗ 71% рдкрд┐рдХреНрд╕реЗрд▓ рдкрд░ рдорд╣рд╛рд╕рд╛рдЧрд░ рдХрд╛ рдХрдмреНрдЬрд╛ рд╣реЛрдЧрд╛ред рд╡рд┐рд░рд▓ рд╕рд░рдгреА. рдФрд░ рдпрджрд┐ рдЖрдк рдХреЗрд╡рд▓ рдорд╛рдирд╡ рд╣рд╛рдереЛрдВ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд░рд┐рдХреНрдд рд╕реНрдерд╛рди 95% рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛрдЧрд╛ред
рдмреЗрд╢рдХ, рдХреЛрдИ рднреА рдорд╛рдирдЪрд┐рддреНрд░реЛрдВ рдХреЛ рд░реЗрдЦрд╛рдкреБрдВрдЬ рд╕рд╛рд░рдгреА рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдПрдХ рд╡реЗрдХреНрдЯрд░ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ;
рд▓реЗрдХрд┐рди рд╡реЗрдХреНрдЯрд░ рдорд╛рдирдЪрд┐рддреНрд░ рдХреНрдпрд╛ рд╣реИрдВ? рдпрд╣ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХрд╛ рдлрд╝реНрд░реЗрдо рдФрд░ рдкреЙрд▓реАрд▓рд╛рдЗрди рдФрд░ рдмрд┐рдВрджреБрдУрдВ рд╕реЗ рдпреБрдХреНрдд рдмрд╣реБрднреБрдЬ рд╣реИред
рдореВрд▓рддрдГ рдмрд┐рдВрджреБрдУрдВ рдФрд░ рдЙрдирдХреЗ рдмреАрдЪ рдХрдиреЗрдХреНрд╢рди рдХрд╛ рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ред
рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рд╛рдХрд╛рдВрдХреНрд╖реА рдорд╛рдирдЪрд┐рддреНрд░рдг рдорд┐рд╢рдиреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣рдорд╛рд░реА рдЖрдХрд╛рд╢рдЧрдВрдЧрд╛ рдХрд╛ рдорд╛рдирдЪрд┐рддреНрд░рдг рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдЧреИрдпрд╛ рдЯреЗрд▓реАрд╕реНрдХреЛрдк рдорд┐рд╢рди рд╣реИред рд▓рд╛рдХреНрд╖рдгрд┐рдХ рд░реВрдк рд╕реЗ рдХрд╣реЗрдВ рддреЛ, рд╣рдорд╛рд░реА рдЖрдХрд╛рд╢рдЧрдВрдЧрд╛, рд╕рдВрдкреВрд░реНрдг рдмреНрд░рд╣реНрдорд╛рдВрдб рдХреА рддрд░рд╣, рдПрдХ рд╕рддрдд рд╡рд┐рд░рд▓ рд╕рд░рдгреА рд╣реИ: рд╢реВрдиреНрдпрддрд╛ рдХреЗ рд╡рд┐рд╢рд╛рд▓ рд╕реНрдерд╛рди рдЬрд┐рдирдореЗрдВ рджреБрд░реНрд▓рдн рдЫреЛрдЯреЗ рдмрд┐рдВрджреБ - рддрд╛рд░реЗ рд╣реИрдВред рд░рд┐рдХреНрдд рд╕реНрдерд╛рди 99,999999тАжтАж.% рд╣реИред рд╣рдорд╛рд░реА рдЖрдХрд╛рд╢рдЧрдВрдЧрд╛ рдХреЗ рдорд╛рдирдЪрд┐рддреНрд░ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рд╡реИрд╢реНрд╡рд┐рдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдЪреБрдирд╛ рдЧрдпрд╛ - рдХреИрдЪреЗред
рдореИрдВ рдЗрд╕ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдЧреНрд▓реЛрдмрд▓реНрд╕ рдХреА рд╕рдЯреАрдХ рд╕рдВрд░рдЪрдирд╛ рдирд╣реАрдВ рдЬрд╛рдирддрд╛, рдореИрдВ рдорд╛рди рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдХреБрдЫ рдЗрд╕реА рдХреЗ рд╕рдорд╛рди рд╣реИ:
Set ^galaxy(b, l, d) = 1; ╨Э╨╛╨╝╨╡╤А ╨╖╨▓╨╡╨╖╨┤╤Л ╨┐╨╛ ╨║╨░╤В╨░╨╗╨╛╨│╤Г, ╨╡╤Б╨╗╨╕ ╨╡╤Б╤В╤М
Set ^galaxy(b, l, d, "name") = "Sun"
Set ^galaxy(b, l, d, "type") = "normal" ; ╨▓╨░╤А╨╕╨░╨╜╤В╤Л blackhole, quazar, red_dwarf ╨╕ ╤В.╨┤.
Set ^galaxy(b, l, d, "weight") = 14E50
Set ^galaxy(b, l, d, "planetes") = 7
Set ^galaxy(b, l, d, "planetes", 1) = "Mercury"
Set ^galaxy(b, l, d, "planetes", 1, weight) = 1E20
...
рдЬрд╣рд╛рдБ b, l, d рд╣реИрдВ
рдЧреНрд▓реЛрдмрд▓реНрд╕ рдХреА рд▓рдЪреАрд▓реА рд╕рдВрд░рдЪрдирд╛ рдЖрдкрдХреЛ рд╕рд┐рддрд╛рд░реЛрдВ рдФрд░ рдЧреНрд░рд╣реЛрдВ рдХреА рдХрд┐рд╕реА рднреА рдЖрд╡рд╢реНрдпрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЧреНрд▓реЛрдмрд▓реНрд╕ рдкрд░ рдЖрдзрд╛рд░ рдпреЛрдЬрдирд╛-рд░рд╣рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред
рд╣рдорд╛рд░реЗ рдмреНрд░рд╣реНрдорд╛рдВрдб рдХреЗ рдорд╛рдирдЪрд┐рддреНрд░ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреИрдЪреЗ рдХреЛ рди рдХреЗрд╡рд▓ рдЗрд╕рдХреЗ рд▓рдЪреАрд▓реЗрдкрди рдХреЗ рд▓рд┐рдП рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛, рдмрд▓реНрдХрд┐ рдбреЗрдЯрд╛ рдХреА рдПрдХ рдзрд╛рд░рд╛ рдХреЛ рдмрд╣реБрдд рддреЗрдЬрд╝реА рд╕реЗ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЗ рд▓рд┐рдП рднреА рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛, рд╕рд╛рде рд╣реА рд╕рд╛рде рддреЗрдЬрд╝ рдЦреЛрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рдЗрдВрдбреЗрдХреНрд╕ рдЧреНрд▓реЛрдмрд▓реНрд╕ рднреА рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдпрджрд┐ рд╣рдо рдкреГрдереНрд╡реА рдкрд░ рд▓реМрдЯрддреЗ рд╣реИрдВ, рддреЛ рдЧреНрд▓реЛрдмрд▓реНрд╕ рдкрд░ рдХрд╛рд░реНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рдП рдЧрдП рдереЗ
рд╣рд╛рд▓ рд╣реА рдореЗрдВ
OpenStreetMap XAPI рдореЗрдВ рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрддрд░ рдкрд░ рд╕реНрдерд╛рдирд┐рдХ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
рд╕реЗ рд▓реА рдЧрдИ рддрд╕реНрд╡реАрд░реЗрдВ
рд╕рдВрдкреВрд░реНрдг рдЧреНрд▓реЛрдм рдХреЛ рд╡рд░реНрдЧреЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдлрд┐рд░ рдЙрдк-рд╡рд░реНрдЧреЛрдВ рдореЗрдВ, рдФрд░ рдЙрдк-рд╡рд░реНрдЧреЛрдВ рдХреЛ рдЙрдк-рдЙрдк-рд╡рд░реНрдЧреЛрдВ рдореЗрдВ, рдФрд░ рдЗрд╕реА рддрд░рд╣ред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд╣рдореЗрдВ рднрдВрдбрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдкрджрд╛рдиреБрдХреНрд░рдорд┐рдд рд╕рдВрд░рдЪрдирд╛ рдорд┐рд▓рддреА рд╣реИ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдЧреНрд▓реЛрдмрд▓реНрд╕ рдмрдирд╛рдП рдЬрд╛рддреЗ рд╣реИрдВред
рдХрд┐рд╕реА рднреА рдХреНрд╖рдг, рд╣рдо рд▓рдЧрднрдЧ рддреБрд░рдВрдд рд╡рд╛рдВрдЫрд┐рдд рд╡рд░реНрдЧ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдЙрд╕реЗ рд╕рд╛рдлрд╝ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рд╕рднреА рдЙрдк-рд╡рд░реНрдЧ рднреА рд╡рд╛рдкрд╕ рдХрд░ рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗ рдпрд╛ рд╕рд╛рдлрд╝ рдХрд░ рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗред
рд╡реИрд╢реНрд╡рд┐рдХ рд╕реНрддрд░ рдкрд░ рдПрдХ рд╕рдорд╛рди рдпреЛрдЬрдирд╛ рдХреЛ рдХрдИ рддрд░реАрдХреЛрдВ рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╡рд┐рдХрд▓реНрдк 1:
Set ^m(a, b, a, c, d, a, b,c, d, a, b, a, c, d, a, b,c, d, a, 1) = id╨Я╨╡╤А╨▓╨╛╨╣╨в╨╛╤З╨║╨╕
Set ^m(a, b, a, c, d, a, b,c, d, a, b, a, c, d, a, b,c, d, a, 2) = id╨Т╤В╨╛╤А╨╛╨╣╨в╨╛╤З╨║╨╕
...
рд╡рд┐рдХрд▓реНрдк 2:
Set ^m('abacdabcdabacdabcda', 1) = id╨Я╨╡╤А╨▓╨╛╨╣╨в╨╛╤З╨║╨╕
Set ^m('abacdabcdabacdabcda', 2) = id╨Т╤В╨╛╤А╨╛╨╣╨в╨╛╤З╨║╨╕
...
рджреЛрдиреЛрдВ рд╣реА рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдХрд┐рд╕реА рднреА рд╕реНрддрд░ рдХреЗ рд╡рд░реНрдЧ рдореЗрдВ рд╕реНрдерд┐рдд рдмрд┐рдВрджреБрдУрдВ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП COS/M рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реИред рдкрд╣рд▓реЗ рд╡рд┐рдХрд▓реНрдк рдореЗрдВ рдХрд┐рд╕реА рднреА рд╕реНрддрд░ рдкрд░ рдЬрдЧрд╣ рдХреЗ рдЪреМрдХреЛрд░ рдЯреБрдХрдбрд╝реЛрдВ рдХреЛ рд╕рд╛рдл рдХрд░рдирд╛ рдХреБрдЫ рд╣рдж рддрдХ рдЖрд╕рд╛рди рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдпрд╣ рд╢рд╛рдпрдж рд╣реА рдХрднреА рдЖрд╡рд╢реНрдпрдХ рд╣реЛред
рдирд┐рдЪрд▓реЗ рд╕реНрддрд░ рдХреЗ рд╡рд░реНрдЧреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХрд╛ рдЙрджрд╛рд╣рд░рдг:
рдФрд░ рдпрд╣рд╛рдБ XAPI рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗ рдХрдИ рдЧреНрд▓реЛрдмрд▓реНрд╕ рд╣реИрдВ: рдЧреНрд▓реЛрдмрд▓реНрд╕ рдкрд░ рдПрдХ рд╕реВрдЪрдХрд╛рдВрдХ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡:
рд╡реИрд╢реНрд╡рд┐рдХ ^рд░рд╛рд╕реНрддрд╛ рдЕрдВрдХ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
рдЧреНрд▓реЛрдмрд▓реНрд╕ рдкрд░ рд╡рд┐рд░рд▓ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд╛ рдореЛрдЯрд╛ рд╡рд░реНрдЧреАрдХрд░рдгред
- рд╣рдо рдХреБрдЫ рд╡рд╕реНрддреБрдУрдВ рдФрд░ рдЙрдирдХреА рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдХреЗ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ (рдореИрдкрд┐рдВрдЧ, рд╕реЗрд▓реБрд▓рд░ рдСрдЯреЛрдореЗрдЯрд╛)
- рд╣рдо рд╡рд┐рд░рд▓ рдореИрдЯреНрд░рд┐рдХреНрд╕ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВред
рдорд╛рдорд▓реЗ 2 рдХреЗ рд▓рд┐рдП) рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдордиреНрд╡рдп рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╕рдордп рдЬрд╣рд╛рдВ рддрддреНрд╡ рдХреЛ рдХреЛрдИ рдорд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╣рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡рд┐рд░рд▓ рд╕рд░рдгреА рддрддреНрд╡ рдХрд╛ рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдмреЛрдирд╕ рдЬреЛ рд╣рдореЗрдВ рдЧреНрд▓реЛрдмрд▓реНрд╕ рдореЗрдВ рдмрд╣реБрдЖрдпрд╛рдореА рдореИрдЯреНрд░рд┐рдХреНрд╕ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╕рдордп рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ
рдЬрдЧрд╣ рдХреЗ рдЙрди рдЯреБрдХрдбрд╝реЛрдВ рдХреЛ рддреБрд░рдВрдд рд╣рдЯрд╛рдПрдВ рдФрд░/рдпрд╛ рдЪреБрдиреЗрдВ рдЬреЛ рдкрдВрдХреНрддрд┐рдпреЛрдВ, рддрд▓реЛрдВ, рдШрдиреЛрдВ рдЖрджрд┐ рдХреЗ рдЧреБрдгрдЬ рд╣реЛрдВред рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд╣рд╛рдВ рдкреВрд░реНрдгрд╛рдВрдХ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдкрдВрдХреНрддрд┐рдпреЛрдВ, рд╡рд┐рдорд╛рдиреЛрдВ, рдХреНрдпреВрдмреНрд╕ рдЗрддреНрдпрд╛рджрд┐ рдХреЗ рдЧреБрдгрдХреЛрдВ рд╡рд╛рд▓реЗ рд╕реНрдерд╛рди рдХреЗ рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЛ рддреБрд░рдВрдд рд╣рдЯрд╛рдиреЗ рдФрд░/рдпрд╛ рд▓рд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддреА рд╣реИред
рдЯреАрдо
рдпрд╣ рдЪрд┐рддреНрд░ рд╡реИрд╢реНрд╡рд┐рдХ рдореЗрдВ рддреНрд░рд┐-рдЖрдпрд╛рдореА рд╕рд░рдгреА рджрд┐рдЦрд╛рддрд╛ рд╣реИ ^a рдФрд░ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡рд┐рд▓реЛрдкрди.
рдЬреНрдЮрд╛рдд рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрдерд╛рди рдХреЗ рдЯреБрдХрдбрд╝реЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдХреЙрд▓рдо рд╡реЗрд░рд┐рдПрдмрд▓ рдореЗрдВ рдореИрдЯреНрд░рд┐рдХреНрд╕ рдХреЙрд▓рдо рдХрд╛ рдЪрдпрди рдХрд░рдирд╛:
; ╨Ч╨░╨┤╨░╨┤╨╕╨╝ ╤В╤А╤С╤Е╨╝╨╡╤А╨╜╤Л╨╣ ╤А╨░╨╖╤А╨╡╨╢╨╡╨╜╨╜╤Л╨╣ ╨╝╨░╤Б╤Б╨╕╨▓ 3x3x3
Set ^a(0,0,0)=1,^a(2,2,0)=1,^a(2,0,1)=1,^a(0,2,1)=1,^a(2,2,2)=1,^a(2,1,2)=1
Merge Column = ^a(2,2)
; ╨Т╤Л╨▓╨╡╨┤╨╡╨╝ ╨┐╨╡╤А╨╡╨╝╨╡╨╜╨╜╤Г╤О Column
Zwrite Column
рдирд┐рд╖реНрдХрд░реНрд╖:
Column(0)=1
Column(2)=1
рдХреЙрд▓рдо рд╡реИрд░рд┐рдПрдмрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдк рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╡рд┐рд░рд▓ рд╕рд░рдгреА рднреА рд╣реИ, рдЬрд┐рд╕реЗ рдЗрд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднреА рдПрдХреНрд╕реЗрд╕ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП
рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдВрддрд░рд┐рдХреНрд╖ рдХреЗ рдЯреБрдХрдбрд╝реЛрдВ рдХрд╛ рдЪрдпрди рдПрдХ рдЫреЛрдЯреЗ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
рдирд┐рд╖реНрдХрд░реНрд╖
рд╡рд░реНрддрдорд╛рди рд╕рдордп рдирдпреЗ рдорд╣рддреНрд╡рд╛рдХрд╛рдВрдХреНрд╖реА рдХрд╛рд░реНрдп рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИред рдЧреНрд░рд╛рдлрд╝ рдЕрд░рдмреЛрдВ рд╢реАрд░реНрд╖реЛрдВ рд╕реЗ рдмрдиреЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдорд╛рдирдЪрд┐рддреНрд░ рдЕрд░рдмреЛрдВ рдмрд┐рдВрджреБрдУрдВ рд╕реЗ рдмрдиреЗ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдХреБрдЫ рд▓реЛрдЧ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдмреНрд░рд╣реНрдорд╛рдВрдб рдХреЛ рд╕реЗрд▓реБрд▓рд░ рдСрдЯреЛрдореЗрдЯрд╛ рдкрд░ рдЪрд▓рд╛рдирд╛ рднреА рдЪрд╛рд╣ рд╕рдХрддреЗ рд╣реИрдВ (
рдЬрдм рд╡рд┐рд░рд▓ рд╕рд░рдгрд┐рдпреЛрдВ рд╕реЗ рдбреЗрдЯрд╛ рдХреА рдорд╛рддреНрд░рд╛ рдЕрдм рд░реИрдо рдореЗрдВ рдлрд┐рдЯ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдЙрдирдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЧреНрд▓реЛрдмрд▓реНрд╕ рдФрд░ рд╕реАрдУрдПрд╕ рдкрд░ рд╕рдорд╛рди рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЙрдЪрд┐рдд рд╣реИред
рдЖрдкрдХреЗ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж! рд╣рдо рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЖрдкрдХреЗ рдкреНрд░рд╢реНрдиреЛрдВ рдФрд░ рд╢реБрднрдХрд╛рдордирд╛рдУрдВ рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВред
Disclaimer: рдпрд╣ рд▓реЗрдЦ рдФрд░ рдЗрд╕ рдкрд░ рдореЗрд░реА рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ рдореЗрд░реА рд░рд╛рдп рд╣реИрдВ рдФрд░ рдЗрд╕рдХрд╛ рдЗрдВрдЯрд░рд╕рд┐рд╕реНрдЯрдореНрд╕ рдХреЙрд░реНрдкреЛрд░реЗрд╢рди рдХреА рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рд╕реНрдерд┐рддрд┐ рд╕реЗ рдХреЛрдИ рд╕рдВрдмрдВрдз рдирд╣реАрдВ рд╣реИред
рд╕реНрд░реЛрдд: www.habr.com