Tafeltje van 5

Status
Niet open voor verdere reacties.

Aggror

Gebruiker
Lid geworden
16 jan 2009
Berichten
46
Hallo,

Ik probeer met C# ervoor te zorgen dat ik een messagebox krijg die mij het tafeltje van 5 neerschrijft. Het tafeltje gaat van 1 x 5 tot en met 10 x 5.

Ik heb al meerdere keren een code weten neer te zetten waarbij geen foutmeldingen naar voren kwamen maar deze werken helaas toch niet.

Ik heb een simpele form met een Button. Zodra er op de button wordt geklikt moet er dus een messagebox te voorschijn komen met het tafeltje van 5.

In de button heb ik deze code verwerkt.
Code:
int Getal = 5;
          int Output;

          for (int Teller = 0 ; Teller < 10; Teller++)
            {  Output = Teller * Getal;
            MessageBox.Show(Teller + " x " + Getal + " = " + Output); 
          }
Ik denk zelf dat het verkeerd gaat bij het declareren van de variabelen of in de for loop initialistatie.

Is er iemand die mij kan uitleggen wat ik hier verkeerd doe?

heel erg bedankt alvast!!
 
Hey,

je code werkt wel, maar je krijgt niet wat je wil.
Je hebt de MessageBox in de lus staan, dus krijg je 10x je uitkomst te zien.
Dit wil je in 1 bericht, dus moet je de uitkomsten tijdelijk opslaan. Dit laat je later zien.
Ook begin je de teller bij 0 en houd die op bij 9. en niet 1 t/m 10.

Hier is een oplossing hoe het werkt:
Code:
int getal = 5;
string output = "";

for (int teller = 1; teller <= 10; teller++)
{
    int uitkomst = teller * getal;
    output += "\n" + teller + " x " + getal + " = " + uitkomst;
}
MessageBox.Show(output.Remove(0, 1));

getal is de waarde waarmee vermenigvuldigd wordt.
output is een tekst waar het resultaat in komt. Uitkomst is natuurlijk de uitkomst van de som.
In de regel waar output ingesteld wordt staan een +=. Dat zorgt ervoor dat die waarde die erachter staat erbij wordt gezet. Het "\n" is een nieuwe regel.
En voordat het bericht weer wordt gegeven halen we de 1e enter er weer vanaf.

Gr,
Mathijs
 
Hallo Mathijs,

Super reactie van je, dankjewel. Goed uitgelegd ook.

laatste vraag: bij de regel
Code:
(output.Remove(0, 1))
. staat de '0' voor de 1ste regel? en de '1' voor 'true'? zoja dan begrijp ik het.
 
Graag gedaan:thumb:

maar de Remove(0, 1) wil eigenlijk zeggen wat je wilt verwijderen.
De 0 betekend, verwijder vanaf index 0. (Dus helemaal vooraan)
en de 1 wil zetten hoeveel tekens je verwijderd.
De 0 wil niet zetten dat het om een regel gaat...
De \n duid wel een regel aan, maar het blijft een leesteken. Dit leesteken moeten we dus verwijderen.

Gr,
Mathijs
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan