Advertentie | |
|
![]() |
|
Dat was de fout niet, het lijkt me dus raar als je daar goedlijkende output uit krijgt. Bovendien, voor zover ik weet, forceert Basic niet dat een string/char moeten beginnen met str/chr (dat was in mijn Basic-dagen, toch niet zo, voor zover ik me dat kan herinneren). Anyhow: je lost een probleem niet op door iets een andere naam te geven (al denkt men daar in de bedrijfswereld en in de politiek soms anders over).
Oribeer anders eens te verwoorden wat hij doet op de lijn die ik aangegeven heb. Om je wat sneller vooruit te laten gaan, in de spoiler staat wat hij werkelijk doet.
Spoiler
Geraak je er met die vage uitleg nog niet uit:
Spoiler
__________________
vaknar staden långsamt och jag är full igen (Kent - Columbus)
|
![]() |
|
code nu;
Dim intTeller As Integer Dim chrSymbool As Char Dim intBeginwaarde, intEindwaarde As Integer Dim strResultaat, strConclusie As String intBeginwaarde = CInt(txtBeginwaarde.Text) intEindwaarde = CInt(txtEindwaarde.Text) chrSymbool = CChar(txtSymbool.Text) lblResultaat.Text = "" For intTeller = intBeginwaarde To intEindwaarde strResultaat = strResultaat & chrSymbool strConclusie = strConclusie & strResultaat & vbCrLf Next lblResultaat.Text = strConclusie dit werkt maar als mijn beginwaarde bijvoorbeeld 5 is begint het niet met 5 keer het symbool.. ![]() |
![]() |
|
Dat komt omdat de lus ook niet genoeg doorlopen wordt daarvoor. Weeral: bedenk eens goed wat je code nu doet. Wat hij momenteel doet is:
je begint met een lege string, je komt in die lus en je stelt intTeller = intBeginWaarde bij de eerste iteratie (een iteratie is een keer die lus doorlopen). Wat je doet, is bij je strResultaat (die tot dan toe leeg is), je symbool bijtellen. En hem aan je conclusie vastmaken. Je moet eerst beginnen met die (bv. 5), en die string klaarmaken. Hoe ik dat zou doen, in dit geval toch, is gewoon van 1 tot eindwaarde laten lopen, maar dan wel kijken of de strResultaat die je gemaakt hebt, wel toegevoegd moet worden (bedenkt voor jezelf met wat voor commando je dat doet en welke voorwaarde je nodig hebt). Daarnaast, heb ik nog een kleine verbetering voor je code, die een beetje op de details ingaat. Het is niet dat jouw code verkeerd is, maar het lijkt me iets mooier. In plaats van Code:
strConclusie = strConclusie & strResultaat & vbCrLf Code:
strConclusie = strConclusie & vbCrLf & strResultaat
__________________
vaknar staden långsamt och jag är full igen (Kent - Columbus)
|
![]() |
|
nu werkt het perfect =)
ik heb een tweede teller gebruikt voor de eerste waarde ![]() Dim intTeller, intTeller2 As Integer Dim chrSymbool As Char Dim intBeginwaarde, intEindwaarde As Integer Dim strResultaat, strConclusie As String intBeginwaarde = CInt(txtBeginwaarde.Text) intEindwaarde = CInt(txtEindwaarde.Text) chrSymbool = CChar(txtSymbool.Text) lblResultaat.Text = "" For intTeller2 = 2 To intBeginwaarde strResultaat = strResultaat & chrSymbool Next For intTeller = intBeginwaarde To intEindwaarde strResultaat = strResultaat & chrSymbool strConclusie = strConclusie & vbCrLf & chrSymbool Next lblResultaat.Text = strConclusie bedankt voor al je hulp! -Lothar |
![]() |
||
Citaat:
Dim chrSymbool As Char Dim intBeginwaarde, intEindwaarde As Integer Dim strResultaat, strConclusie As String intBeginwaarde = CInt(txtBeginwaarde.Text) intEindwaarde = CInt(txtEindwaarde.Text) chrSymbool = CChar(txtSymbool.Text) lblResultaat.Text = "" For intTeller2 = 2 To intBeginwaarde strResultaat = strResultaat & chrSymbool Next For intTeller = intBeginwaarde To intEindwaarde strResultaat = strResultaat & chrSymbool strConclusie = strConclusie & strResultaat & vbCrLf Next lblResultaat.Text = strConclusie (foutje) |
![]() |
|
|