Avatar billede slejpnir Nybegynder
07. december 2005 - 11:49 Der er 4 kommentarer og
1 løsning

løkke i løkke

Nedenstående kode virker kun ved 1. gennemkørsel. Hvad har jeg gjort forkert?
Public Sub løkke1()
Dim tabeldel1
Dim tabeldel2
Dim tæller1
Dim tæller2
  tæller1 = 1
  tæller2 = 1
    For tabeldel1 = 6 To 18 Step 6
    For tabeldel2 = 7 To 21 Step 7
            MsgBox "Vi siger" & tæller1 & " gange 6 er " & tabeldel1
        tæller1 = tæller1 + 1
            MsgBox "Vi siger" & tæller2 & " gange 7 er " & tabeldel2
                tæller2 = tæller2 + 1
Next tabeldel2
Next tabeldel1


End Sub
Avatar billede medions Nybegynder
07. december 2005 - 12:07 #1
Dette burde nu virke:

Dim tabeldel1
Dim tabeldel2
Dim tæller1
Dim tæller2
  tæller1 = 1
  tæller2 = 1
    For tabeldel1 = 6 To 18 Step 6
        For tabeldel2 = 7 To 21 Step 7
            MsgBox "Vi siger" & tæller1 & " gange 6 er " & tabeldel1
            tæller1 = tæller1 + 1
            MsgBox "Vi siger" & tæller2 & " gange 7 er " & tabeldel2
                tæller2 = tæller2 + 1
    Next
    Next

//>Rune
Avatar billede snowball Novice
07. december 2005 - 12:22 #2
Du kan ikke "regne" på den måde. Når du kører en løkke inde i en løkke, så skal den inderste løkke jo køres færdig inden du kommer til næste punkt af din yderste løkke.

Derfor går der 3 "runder" inden tabeldel1 får en ny værdi, og derfor virker dit "regnestykke" ikke.

For at dit eksempel vil virke (sådan som jeg forstår det), så skal du køre løkkerne hver for sig.

    For tabeldel1 = 6 To 18 Step 6
        MsgBox "Vi siger " & tæller1 & " gange 6 er " & tabeldel1
        tæller1 = tæller1 + 1
    Next
    For tabeldel2 = 7 To 21 Step 7
      MsgBox "Vi siger " & tæller2 & " gange 7 er " & tabeldel2
      tæller2 = tæller2 + 1
    Next
Avatar billede slejpnir Nybegynder
07. december 2005 - 12:58 #3
medions Dit forslag virker kun for 7-tabellen - men i øvrigt bliver for.. to sætningen ikke respekteret. Det gjorde den heller ikke i min version. Den bliver bare ved med at køre 4,5 6 osv.
Så jeg holder mig til snowball. Men tak for hjælpen.
Avatar billede slejpnir Nybegynder
07. december 2005 - 12:59 #4
Jeg vælder din løsning snowball. Det andet kan åbenbart ikke lade sig gøre.
Tak for hjælpen.
Avatar billede thomaxz Nybegynder
07. december 2005 - 13:50 #5
når man bruger mange løkker er det en god ide at kommenter hvilken løkke der "next" es

eks.

For tabeldel1 = 6 To 18 Step 6
        For tabeldel2 = 7 To 21 Step 7
            MsgBox "Vi siger" & tæller1 & " gange 6 er " & tabeldel1
            tæller1 = tæller1 + 1
            MsgBox "Vi siger" & tæller2 & " gange 7 er " & tabeldel2
                tæller2 = tæller2 + 1
        Next tabeldel2
Next tabeldel1

det gør det mere overskuligt.
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