IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Ergiler
Člen
Avatar
Ergiler:10.3.2018 17:50

Ahoj, chci se zeptat, jestly lze string napsat do konzole, aby mi to spočítalo slova ve větě.

string veta = "Lorem ipsum dolor sit amet, consectetur adipiscing elit.";
Console.Write­Line(veta);
int pocetslov = 1;

int mezera;
mezera = ' ';

foreach (char c in veta)
{
if (mezera == c)
pocetslov++;
}

Console.Write­Line("Ve věte je {0} slov", pocetslov);

 
Odpovědět
10.3.2018 17:50
Avatar
don.jarducius:10.3.2018 18:20

Ahoj,
pěkné použití foreache. Lze to ale mnohem jednodušeji... Použij funkci Split.

int PocetSlov = "Lorem ipsum dolor sit amet, consectetur adipiscing elit.".Split(" .,:?!".ToCharArray(), StringSplitOption.RemoveEmptyEntries).Length;

Pro načtení stringu z konzole můžeš použít např. string text = Console.ReadLine();

Takže by pak výsledek mohl vypadat takto:

int pocetslov = Console.ReadLine().Split(" .,:?!".ToCharArray(), StringSplitOption.RemoveEmptyEntries).Length;
Console.WriteLine("Ve věte je {0} slov", pocetslov);

PS: kód je z hlavy, nevím jestli jsou dobře názvy funkcí a parametrů.

Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
Nahoru Odpovědět
10.3.2018 18:20
Ten kdo nechce hledá důvod, ten kdo chce hledá způsob
Avatar
Ergiler
Člen
Avatar
 
Nahoru Odpovědět
10.3.2018 20:54
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.