>kabbak Det kan jeg ikke oversætte. Kunne jeg bede om lidt mere kode? Hvis nu jeg vil have returneret tallet, (det tilfældige) der kan divideres med 2 i text1.txt og tallet 2 i text2.text og resultatet af denne division i text3.text, hvordan skal koden i en command1.click så se ud?
Spørgeren har ikke angivet noget maksimalt tal, og er sikkert selv i stand til at ændre 9-tallet til noget for spørgeren fornuftigt. Det er hul i hovedet at lave en løkke til at løse det problem.
>Jeg er en ren novice og har ikke skyggen af en chance for at få din kode til at fungere, hvis jeg ikke får lidt mere kode af dig. Kunne jeg ikke få det synligt: Se venligst 23:13:36?
Private Sub Command1_Click() Do tal1 = Int((9 * Rnd) + 1) tal2 = Int((tal1 * Rnd) + 1) Loop Until tal1 Mod tal2 = 0 ' kører løkken indtil tallet går op i tal1 Text1.Text = tal1 Text2.Text = tal2 End Sub
Nej, ham taler jeg ikke med ;) Jeg forsøger bare at få dig til at forstå at det ikke er den bedste løsning med en løkke, og at den løsning kabbak kommer med ikke holder i længden. Skal du finde tal, hvor fx 7913 går op, vil der gå en rum tid før du finder et. Den løsning jeg skitserer for dig har ikke det problem.
>erikjacobsen Det er jeg ked af at høre, for så har jeg misforstået forløbet. Som sagt er jeg ikke særlig velbevandret i VB og sætter mig kun ind i de ting, som jeg skal bruge for at lave det ene eller det andet. Det jeg forsøger at lave nu er et øveprogram i regning for børn, og jeg vil nok ikke udsætte dem for en divisor på 7913, men jeg forstår da problemet, principielt. Jeg håber, at vi er lige gode venner af den grund!
Private Sub Command1_Click() tal2 = Int((9 * Rnd) + 1)' divisor ,tal mellem 1 og 9 tal1 = Int((9 * Rnd) + 1)*tal2' tal mellem 1 og 9 ,ganget med divisor, her max. 81 Text1.Text = tal1 Text2.Text = tal2 End Sub
Lillehans, jeg er enig med de andre, det er nok best at lave den sådan her, der er inggen løkke, så den er hurtigst.
>Hej kabbak! Se din første kode respekterer, at såvel dividend som divisor er 1-cifrede tal. Det gør den anden kode ikke? Jeg skal helst kunne styre om der skal regnes med 1- eller 2- eller 3-cifrede tal! Er der nogen løsning på det?
>arne v Nej, jeg søger ikke nogen lige fordeling. Jeg søger et tal der kan divideres med et andet tal og gå op i tallet. Det er et program, hvor børn skal kunne øve sig i at dividere, og for ikke at gøre det for kompliceret på dette niveau, skal tallet kunne gå op. Og der skal jo helst være forskellige regnestykker.
Den eneste måde, så vidt jeg kan se, er så koden fra 23/04-2006 23:42:04, der opfylder dit kriterie, men som sagt, kører den i loop indtil at den finder noget der går op, det gør at koden,kan blive langsom ved større tal.
Jeg er ikke helt sikker på, hvad det er du mangler i ovenstående. Men tænk på dine divisionsopgaver som multiplikationsopgaver. Du vælger små "a" og "b" tilfældigt. Du udregner "c=a*b", og vupti har du et divisionsstykke. "Hvad er c/b?" Du har svaret "a", som du kan sammenligne med opgaveløserens svar.
Synes godt om
Ny brugerNybegynder
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.