1 *
2 ++
3 ***
4 ++++
5 *****
6 ++++++
7 *******
8 ++++++++
9 *********
10 ++++++++++
[Re:] [Joci93:] C# segítség!! - BLOGOUT fórum
hozzászólások
Ha itteni segítséggel írod meg még a házi dolgozatodat is, megérdemled, hogy átmenj a vizsgákon?
Pont így kéne kinéznie...
Vakegérke: Ez csak szimpla házi..., amiből lehetne tanulni, ha kész lenne. De egy értelmes írást nem találtam, hogy mit merre hogyan
[ Szerkesztve ]
Elméletileg...
using System;
using System.Text;
namespace Szamlalo
{
class Program
{
static void Main(string[] args)
{
for (int i = 1; i < 11; i++)
{
if (i % 2 == 0)
{
//Paros szam
StringBuilder builder = new StringBuilder();
builder.Append(i.ToString());
for (int z = 1; z <= i; z++)
{
builder.Append("+");
}
Console.WriteLine(builder);
builder.Clear();
}
else
{
//Paratlan szam
StringBuilder builder = new StringBuilder();
builder.Append(i.ToString());
for (int z = 1; z <= i; z++)
{
builder.Append("*");
}
Console.WriteLine(builder);
builder.Clear();
}
}
Console.ReadKey();
}
}
}
[ Szerkesztve ]
Értelek én, de jó lenne, ha te is megértenéd azt, amit mondok.
Valószínűleg tudnod kéne a megoldást, nem véletlen adta fel a tanár házi feladatként ezt a tételt.
Tanulsz egyáltalán, vagy mások súgásából, kegyelméből élsz?
Nézd, nem babrálni akarlak. Az viszont ciki, hogy a fórumtársakhoz fordulsz olyan kérdéssel, amely nem szabadna, hogy kérdés legyen számodra.
Köszönöm, működik.
Vakegérke: Arról én nem tehetek, hogy a tanár nem magyarázza el rendesen a dolgokat illetve, hogy az órai anyagot sehogyan nem lehet hazavinni. Se email / se pendrive se semmi... így elég nehéz...
Amennyiben érdekel elmagyarázhatom, hogy mitől működik
ez úgy kb. 2x olyan hosszú és 100x olyan bonyolult, mintha fogod az 1-es hsz-ben levő kész kimenetet, berakod kiírató utasításokba, osz csókolom.
Végül is bele lehetne hányni az egészet egy sortördelt string-be is, aztán egy paranccsal kiíratni konzolba
Ha konkretan az a feladat, hogy ez legyen kiirva, akkor a tanarnak egy szava nem lehet ra. De gondolom a kovetkezo lecke meg az lesz, hogy randomgeneralt szamokon vegezzek el ugyanezt (mi is ilyesmi feladatokkal tanultunk, csak pascalban kellett irni meg akkor).
[ Szerkesztve ]
Tudtommal nem azt írta, hogy írja meg valaki helyette, hanem segítséget kért, magyarázattal, azaz meg akarja érteni. Amúgy házi vagy sem, vizsgán nyilván nem fog segítséget kapni, úgyhogy abból kell majd megélnie, amit épp akkor tud. Nem értem, hol itt a probléma.
Ezzel az erővel mehetsz minden programnyelv topicjába osztani az észt, ott naponta tesznek fel ilyen kérdéseket (hozzáteszem, hogy ez a kérdés is elfért volna a C# topicban, de mindegy).
[ Szerkesztve ]
Kicsit még egyszerűbben (van olyan String konstruktor, ami pont azt csinálja, amit kell - szerintem a tanár is inkább erre lehet kíváncsi ):
using System;
namespace Szamlalo
{
class Program
{
static void Main(string[] args)
{
for(int i = 1; i <= 10, i++)
{
if (i % 2 == 0)
{
Console.WriteLine("{0}{1}", i, new String("+", i));
}
else
{
Console.WriteLine("{0}{1}", i, new String("*", i));
}
}
Console.ReadKey();
}
}
}
[ Szerkesztve ]
Tenyleg, igazad van. Hirtelen eszembe sem jutott
Sőt, ha minimalizálunk
using System;
namespace Szamlalo
{
class Program
{
static void Main(string[] args)
{
string ph = "+*";
for(int i = 1; i <= 10, i++)
{
Console.WriteLine("{0}{1}", i, new String(ph[i%2], i));
}
Console.ReadKey();
}
}
}
j0k3r!
(senior tag)
meg egy kis "minimalizalas" :
for (int i = 1; i <= 10; i++)
Console.WriteLine("{0} {1}", i, new String(i % 2 == 0 ? '+' : '*', i));
Console.ReadKey();
kerdezonek: [link]
[ Szerkesztve ]
Szegény csávó egyre kevesebbet fog érteni belőle
Akkor már:
for (int i = 1; i <= 10; i++)
Console.WriteLine("{0} {1}", i, new String("+*"[i % 2], i));
Console.ReadKey();
j0k3r!
(senior tag)
1 sor!
Enumerable.Range(1, 10).ToList().ForEach(n => Console.WriteLine("{0} {1}", n, new String("+*"[n % 2], n)));
Yesss
lambda 4 prezident
[ Szerkesztve ]
Bár "hagyományosan" azért még mindig rövidebb
Enumerable.Range(1, 10).ToList().ForEach(n => Console.WriteLine("{0} {1}", n, new String("+*"[n % 2], n)));
for (int n = 1; n <= 10; n++) Console.WriteLine("{0} {1}", n, new String("+*"[n % 2], n));
[ Szerkesztve ]