60 73 29
-50 20 48
-100 82 4
-100 29 4
-100 29 6
-100 29 4
-100 29 6
-100 82 4
-50 20 48
60 73 29
Вариант номер один:
Data 60, 73, 29
Data -50, 20, 48
Data -100, 82, 4
Data -100, 29, 4
Data -100, 29, 6
Global XS%=3
Global YS%=5
Dim p(XS,YS)
Function debug_matrix()
Local s$
For y=1 To YS
s=""
For x=1 To XS
s=s+LSet(p(x,y),5)
Next
DebugLog s
Next
End Function
Function PrevColCor%(z%,i%)
If z=1 Return True
If p(z-1,i)=p(z-1,i+1)
Return True
EndIf
Return False
End Function
For y=1 To YS
For x=1 To XS
Read p(x,y)
Next
Next
debug_matrix()
DebugLog ""
;====================
For z=1 To XS
For j=2 To YS
For i=1 To YS-j+1
If p(z,i)>p(z,i+1) And PrevColCor(z,i)
For r=z To XS
Local t%=p(r,i)
p(r,i)=p(r,i+1)
p(r,1+i)=t
Next
EndIf
Next
Next
Next
;====================
debug_matrix()
DebugLog ""
WaitKey()
End