Avatar billede karsten_larsen Praktikant
03. januar 2006 - 20:26 Der er 3 kommentarer og
1 løsning

Beregningsproblem med array

Jeg har et kontrol data sæt Array_kontrol og et data sæt Array_data

Array_kontrol ser således ud:
var_Array_kontrol = "22,23,24,25,26,27,28,29,30"
Array_kontrol = Split(var_Array_kontrol, ",")

Array_data ser således ud:
var_Array_data = "22,22,22,24,25,26,26,26,28,30,30,30,30"
Array_data = Split(var_Array_data, ",")

Ud for Array_kontrol(0) skal stå nummeret for Array_data således med det laveste og højeste nummer[nummerplaceringen i Array_data] angives, hvor Array_data er lig Array_kontrol (0) og så videre

Sådan skal resultatet se ud:
Array_kontrol(0) = 0 til 2
Array_kontrol(1) =
Array_kontrol(2) = 3
Array_kontrol(3) = 4
Array_kontrol(4) = 5 til 7
Array_kontrol(5) =
Array_kontrol(6) = 8
Array_kontrol(7) =
Array_kontrol(8) = 9 til 12


Jeg har prøvet med følgende

For y = 0 to 8
    For i = 0 to 12
       
        If Array_kontrol (y) = Array_data(i) then
       
            For z = i to 12
                If Array_data(i)< Array_data(z) then
                    flag = 0
                else
                    flag = 1
                End if
            next
           
            If flag = 0 then
                Response.write "<br>Array_kontrol (" & y & ")  = " & i
            end if
       
            If flag = 1 then
                Response.write "<br>Array_kontrol (" & y & ")  = " & i & " til " & i
            end if
        End if
   
    Next
Next

Men det giver følgende resultat:
Array_kontrol (0) = 0
Array_kontrol (0) = 1
Array_kontrol (0) = 2
Array_kontrol (2) = 3
Array_kontrol (3) = 4
Array_kontrol (4) = 5
Array_kontrol (4) = 6
Array_kontrol (4) = 7
Array_kontrol (6) = 8
Array_kontrol (8) = 9 til 9
Array_kontrol (8) = 10 til 10
Array_kontrol (8) = 11 til 11
Array_kontrol (8) = 12 til 12

Hvordan finder jeg den højeste og laveste værdi, som modsvarer værdien i Array_kontrol???

160 point da jeg er gået kold på det.


???:-) karsten_larsen
Avatar billede nielle Nybegynder
03. januar 2006 - 20:54 #1
Et bud:

For y = LBound(Array_kontrol) To UBound(Array_kontrol)
    LowI = -1
    HighI = -1

    For i = LBound(Array_data) To UBound(Array_data)
        If Array_kontrol(y) = Array_data(i) Then
            If LowI = -1 Then LowI = i
            LighI = i
        End If
    Next

    Response.Write "<br>Array_kontrol (" & y & ")  = "
   
    If LowI <> -1 Then
        If LowI < HighI Then
            Response.Write LowI & " til " & HighI
        Else
            Response.Write LowI
        End If
    End If

    Response.Write "<br>"
Next
Avatar billede nielle Nybegynder
03. januar 2006 - 20:55 #2
LighI = i

- skal vist lige rettes til:

HighI = i
Avatar billede karsten_larsen Praktikant
03. januar 2006 - 21:02 #3
nielle - det fungerer bare perfekt. Mange tak for hjælpen. Vil du lave et svar?

:-)) karsten_larsen
Avatar billede nielle Nybegynder
03. januar 2006 - 21:03 #4
Svar :^)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester