Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Diskusia – 11. diel - Textové reťazce v C# druhýkrát - Práca s jednotlivými znakmi

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Posledné komentáre sú na spodnej časti poslednej stránky.
Avatar
Insane Qurd
Tvůrce
Avatar
Odpovedá na dleducmanh6
Insane Qurd:16.8.2015 18:23

Ahoj, asi myslíš tohle:

Console.Write("Heslo");
if (Console.ReadLine() == "sims")
   Console.WriteLine("vítej");
else
   Console.WriteLine("ne");

contains nepoužívej, to ti to pak vezme každý textový řetězec obsahující s

Odpovedať
It's impossible to say it's impossible.
Avatar
dleducmanh6
Člen
Avatar
dleducmanh6:17.8.2015 10:41

Ne, myslel jsem to s 1 porměnnou navíc asi takhle: Console.Write­Line("Zadej heslo:");
string h = "sims";
string s = string.parse (Console.Read­Line());
if (h != s)
Console.WriteLine ("Vítej");
else
Console.WriteLine ("Zadané heslo je špatně");
Console.ReadLine ();
Ale pořád nevím co je tam špatně :/.

Avatar
dleducmanh6
Člen
Avatar
dleducmanh6:17.8.2015 13:21

nevíte někdo jak to udělat? :/

Avatar
Milan Křepelka
Tvůrce
Avatar
Odpovedá na dleducmanh6
Milan Křepelka:17.8.2015 13:41
Console.WriteLine("Zadej heslo:");
string h = "sims";
string s = Console.ReadLine();
if (h.Equals(s))
    Console.WriteLine("Vítej");
else
    Console.WriteLine("Zadané heslo je špatně");
Console.ReadLine();
Avatar
krepsy3
Tvůrce
Avatar
Odpovedá na Lukáš Nový
krepsy3:5.10.2015 17:39

Když jsi při šifrování prováděl:
if (c == 'z')
c = (char((int)c - 26)

Tak musíš při dešifrování udělat pravý opak:
if (c == 'a')
c = (char)((int)c + 26)

Protože tam, kde se při šifrování ošetřovalo "maximum" písmeno z,
tam se nyní ošetřuje "minimum" písmeno a ;)

Odpovedať
Programátor je stroj k převodu kávy na kód.
Avatar
krepsy3
Tvůrce
Avatar
Odpovedá na krepsy3
krepsy3:5.10.2015 17:45

Kecám, promiň: ;)
šifrace:
if (c > (int)'z')
c = (char((int)c - 26)

dešifrace:
if (c < (int)'a')
c = (char((int)c + 26)

Odpovedať
Programátor je stroj k převodu kávy na kód.
Avatar
rimodar65
Člen
Avatar
rimodar65:30.1.2016 22:50

Nějakmi nejde drobná úprava
>
Analýza výskytu znaků ve větě
>

Console.WriteLine("Zadej slova a já ti spočítám samohlásky, souhlásky a mezery.Zadávání ukonči ENTEREM");
           String s = Console.ReadLine();
            int a = int.Parse(s);
            Console.WriteLine(s);//TOHLE MI NEJDE
            while (a > 0)
            {

           s = s.ToLower();// převod na malá písmena
           // inicializace počítadel
           int pocetSamohlasek = 0;
           int pocetSouhlasek = 0;

           // definice typů znaků
           string samohlasky = "aeiouyáéěíóúůý";
           string souhlasky = "bcčdďfghjklmnpqrřsštťvwxzž";

           // hlavní cyklus
           foreach (char c in s)
           {
               if (samohlasky.Contains(c))//contains prohledá c jestli se v ní nachází samohlásky
                   pocetSamohlasek++;
               else
                   if (souhlasky.Contains(c))
                       pocetSouhlasek++;
           }
           Console.WriteLine("Samohlásek: {0}", pocetSamohlasek);
           Console.WriteLine("Souhlásek: {0}", pocetSouhlasek);
           Console.WriteLine("Nepísmenných znaků: {0}", s.Length - (pocetSamohlasek + pocetSouhlasek));
           Console.WriteLine("Znaků je celkem:{0}", pocetSamohlasek + pocetSouhlasek);

           Console.ReadKey();
Avatar
rimodar65
Člen
Avatar
rimodar65:30.1.2016 23:04

Po přečtení dřívějších dílů asi chápu chybu,tak na to jdu jinak.....

Avatar
Dominik Gavrecký:10.4.2016 23:01

Nech sa na to pozriem ako chcem nerozumiem prečo práve "char c". Rozumiem že sme určili dátoví typ na char premene c ale čo ta premenná obsahuje ? Je to nejaká špeciálna metoda ktorá rozoberie string na jednotlivé hodnoti pola a už ho len prechádza práve cez to in ? Mohol by mi to niekto logický popísať ? Ďakujem

// hlavní cyklus
foreach (char c in s)
{

}
Odpovedať
Hlupák nie je ten kto niečo nevie, hlupákom sa stávaš v momente keď sa na to bojíš opýtať.
Avatar
Petr Šťastný
Tvůrce
Avatar
Petr Šťastný:18.4.2016 10:50

Ahoj, to počitadlo souhlásek, samohlásek atd by šlo udělat jednodušeji:

string s = "Programátor se zasekne ve sprše, protože instrukce na šampónu byly: Namydlit, omýt, opakovat.";

            s = s.ToLower();

            int a = 0;
            int b = 0;
            int c = 0;

            string samo = "aeiouyáéěíóúůý";
            string sou = "bcčdďfghjklmnpqrřsštťvwxzž";


            foreach (char h in s)
            {
                if (samo.Contains(h))
                    a++;
                else if (sou.Contains(h))
                    b++;
                else
                    c++;

            }
            Console.WriteLine("Samohlasek: {0} | Souhlasek: {1} | Ostatni znaky: {2}", a, b, c);
            Console.ReadKey();
Posledné komentáre sú na spodnej časti poslednej stránky.
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 10 správy z 115.