Código fuente de 'Ordena array 2.asp'

<html>
<head>
<title>Ordena array 2 - Códigos asp, programacion asp, descargas asp, rutinas asp</title>
</head> 
<p align="center"><b><font size="3">Ordena array 2</font></b>
<body style="font-family: Arial; font-size: 11pt"></p>

<!-- 
 '**************************************
    ' Name: Multidimensional Array Sort function in VB Script
    
    ' Description:This function will sort an array. 
    Currently it keys in on the first column of the array(0,?). It will reorder all the information 
    in each row of the array so that the fist column of the array is sorted. The first column is compar
    ed using a string compare function.
    I use this In many of my sites where I have To pull back encrypted data from the database. 
    I decrypt the data With a Active X object inside of the ASP script Then place all the data into 
    an array. Once the data is in the array I can sort it and display it to the user.
    Future enhancements To this function will include the ability to Select which column of the array you 
    would like to sort on.
    
    ' By: Eric Repec InetSolution

    ' Assumes:Currently it keys in on the first column of the array(0,?).
    ' Side Effects:None.
    '
    'http://www.Planet-Source-Code.com/vb/scripts/ShowCode.asp?txtCodeId=6482&lngWId=4    'for details.    
   -->
   <%
    function OrdenaVector(values())
    Dim i 
    Dim j 
    Dim smallest_value 
    Dim smallest_j 
    Dim min
    Dim max
    Dim temp
    
    min = lbound(values,2)
    max = ubound(values,2)
    	For i = min To max - 1
    	smallest_value = values(0,i)
    	smallest_j = i
    	For j = i + 1 To max
    		' See if values(j) is smaller. changed To strComp to work With strings.
    		if strComp(values(0,j),smallest_value,vbTextCompare) = -1 Then
    			' Save the new smallest value.
    			smallest_value = values(0,j)
    			smallest_j = j
    		End if
    		Next 'j
    		if smallest_j <> i Then
    			' Swap items i and smallest_j.
    			For intA = 0 To ubound(values,1)
    				temp = values(intA,smallest_j)
    				values(intA,smallest_j) = values(intA,i)
    				values(intA,i) = temp
    			Next 'intA
    		End if
    	Next 'i
    OrdenaVector = values
    End function


    Dim aUnSort(2,2), aSorted
    aUnSort(0,0) = 9
    aUnSort(0,1) = 8
    aUnSort(0,2) = 7
    aUnSort(1,0) = 6
    aUnSort(1,1) = 5
    aUnSort(1,2) = 4
    aUnSort(2,0) = 3
    aUnSort(2,1) = 2
    aUnSort(2,2) = 1


    
    aSorted = OrdenaVector(aUnSort)
  
    
    response.write "<b>Valores del array original (vector 3x3): </b>9,8,7,6,5,4,3,2,1<br>"
    Response.write "<b>Valores ordenados por filas: </b>"
    For i = 0 To 2
    	For j = 0 To 2	        
    	response.write asorted(i,j)
    	if not (j=2 and i=2) then response.write ","
    	next 
    next
    
%>

</body>
</html>