C# szorzótábla?
Hogyan lehet ciklusok segítségével 10*10-es szorzótáblát írni C# nyelven? Segítsetek légyszi.
Itt van amit eddig csináltam. Hol a hiba benne?
for (int i = 1; i <= 10; i++)
{
for (int j = 1; j <= 10; j++)
{
richTextBox1.Text = i * j +" ".ToString();
}
}
richTextBox1.Text = richTextBox1.Text + "\n";
2 for ciklus
ciklus 1->10ig
ciklus 1->10ig
print szám
ciklus vége
print sorvég
ciklus vége
csak hogy háziból is maradjon vmi nem c# :)
egyébként ha vmihez hozzáadsz egy üres / bármilyen ""-t akkor az attól fogva string lesz
Pl:
1+"" == convert.tostring(1)
Most javult?
int eredmeny = 1;
richTextBox1.Text = "";
for (int i = 1; i <= 10; i++)
{
for (int j = 1; j <= 10; j++)
{
eredmeny = i * j ;
}
}
richTextBox1.Text = eredmeny + "\n";
A = felülírja az értéket, te hozzátenni akarsz a textboxodban levő értékhez. Erre van a += operátor, ami lényegében ezt cisnálja:
RichTextbox1.Text = RichTextbox1.Text + valami;
A fenti ezzel egyezik meg:
RichTextbox1.Text += valami;
Ha megengedsz egy javaslatot, használj egy különálló string változót, amit az elején üresre állítasz, és utána a ciklus belsejében adogatod hozzá az egyes értékeket (A += operátorral). A RichTextboxnak pedig csak a legeslegvégén adod át ezt a változót.
Ott ülsz az eredmény előtt.
Javult?
Ha felülírod minden lépésnél a textbox szövegét, akkor soha nem fog szorzótáblát tartalmazni.
Hozzáfűzni kéne inkább.
mivan?
\t = tab (asszem)
for(int s = 1;s<11;s++){ //sor
for(int o = 1;o<11;o++){ //oszlop
textbox.Text = textbox.Text + (s*o)+"\t";
}
//sortörés sorok végén
textbox.Text += "\n"; //+= jelentése : kb. hozzáad vmit
}
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!