Avatar billede dr.truti Nybegynder
15. januar 2002 - 20:38 Der er 7 kommentarer og
1 løsning

Case (Tror jeg nok).

Hvis jeg har 4 tal verdi\'er (1, 2, 3, 4) som alle er lagre i en 4 var\'s

var1 Har 1 som verdi
var2 Har 2 som verdi
osv.

Hvordan finder jeg den case der passer bedst hvis jeg har:

Case1:
var1 = 1
var2 = 1
var3 = 1
var4 = 1

Case2:
var1 = 1
var2 = 2
var3 = 3
var4 = 4

Hvordan finder jeg ud af at programmet skal vælge den case der passer bedst til variablerne ????

Bare rolig det er ikke meningen at det lille ex. skulle buges :)

------------

Truti
Avatar billede egede Nybegynder
15. januar 2002 - 20:45 #1
Jeg er ikke hlet med.
Desuden er verdi = værdi :)
Avatar billede dr.truti Nybegynder
15. januar 2002 - 20:48 #2
Hvordan finder jeg frem til den Case som har flest mulige tilfældes med alle værdierne ?
Avatar billede joern Nybegynder
15. januar 2002 - 20:49 #3
Mener du \'Select Case\'?

Select Case var
  case 1
      msgbox(\"jeg er sur\")
  case 2
      msgbox(\"Jeg er glad\")
  case 3
      msgbox(\"Jeg sover\")
  case 4
      msgbox(\"Jeg er ikke hjemme\")
  case 5 to 8
      msgbox(\"Ole er kommet\")
  case 9, 11, 13
      msgbox(\"Lise spiser\")
  case 10, 12, 14-18
      msgbox(\"Nu er det slut\")
End Select

God fornøjelse

M.v.h.  Jørn
Avatar billede egede Nybegynder
15. januar 2002 - 20:53 #4
Altså hvis der er flest 1-taller gør det, flest to-taller, gør det o.s.v.?
Avatar billede dr.truti Nybegynder
15. januar 2002 - 21:05 #5
Ok prøver lige at forklare mig lidt bedre.

Brugeren kan sætte 3 varibaler\'s verdi ved hjælp af en tekst boks.

Brugeren instaster måske
1 i den ene tekst boks og 2 i den anden og 3 i det treje, Den funktion (Case) som ligger tætest på dette vælges og køres.

Prorammøren giver her nogle case\'er nogle værdier:

case 1, 1, 1 \'den ene case
msgbox (\"Blah 1\")

Case 2, 2, 2  \'den anden case
msgbox (\"Blah 2\")

case 1, 2, 2  \'den treje case

Så skal programmet være i stand til at udregne at det må være det treje case der skal køret da værdierne i den passer bedst til de angivende værdi\'er. Den treje er kun 1 fejl fra og den første og anden er 2 værdier fra.

Truti
Avatar billede ea_data Nybegynder
15. januar 2002 - 21:50 #6
Jeg tror du skal lægge alle valgmuligheder ind i et array. Herefter må du lave en FOR -- NEXT løkke som gennemløber dette array med valgmuligheder og for hvert element i arrayet sammenligne med indholdet i de 3 textboxe.
Avatar billede ea_data Nybegynder
15. januar 2002 - 22:29 #7
Det kunne fx gøres på denne måde:

Dim Valg(3, 3)



Private Sub Command1_Click()
\'Find bedst egnede valg
\'bemærk at textboxe også er oprettet som array : text(0),text(1),text(2)
Dim Max, Rigtige, BedsteValg
Max = 0
Rigtige = 0
BedsteValg = 0
For x = 1 To 3
For y = 0 To 2
    If Valg(x, y) = Text(y) Then
      Rigtige = Rigtige + 1
    End If
Next
If Rigtige > Max Then
    Max = Rigtige
    BedsteValg = x
   
End If
Rigtige = 0
Next
Me.Print BedsteValg
If BedsteValg <> 0 Then
For y = 0 To 2
    Me.Print Valg(BedsteValg, y);
Next
Else
    Me.Print \"Det kan du gøre bedre\"
End If
 
End Sub

Private Sub Form_Activate()


End Sub

Private Sub Form_Load()
\'Lav array med valgmuligheder
For x = 1 To 2
    Valg(x, 0) = x
    Valg(x, 1) = x
    Valg(x, 2) = x
Next
Valg(3, 0) = 1
Valg(3, 1) = 2
Valg(3, 2) = 2
End Sub
Avatar billede dr.truti Nybegynder
28. januar 2002 - 20:35 #8
Beklager meget men jeg har ikke kunne bruge nogen kode til noget... Vi taler simpelhen forbi hinannen...

Truti
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