Hledáš dárek, který neskončí v koši? Nyní 90 % extra kreditů ZDARMA s promo kódem PREKVAPENI90. Zjisti více:
NOVINKA: Staň se datovým analytikem od 0 Kč a získej jistotu práce, lepší plat a nové kariérní možnosti. Více informací:

Diskuze – Lekce 11 - Textové řetězce v C# podruhé - Práce s jednotlivými znaky

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Nejnovější komentáře jsou na konci poslední stránky.
Avatar
samo007
Tvůrce
Avatar
samo007:12.2.2013 16:54

A prečo nemôžme nechať tie divné znaky, keď to ide rozšifrovať? Aspoň to bude presné a ten, kto sa k šifre dostane, nebude ju môcť rozlúštiť :D
Čo tak to zauzliť? (skúste si moju šifru)

// premenné
string s = "Povodňová aktivita a selzmické vlny.";
Console.WriteLine("Pôvodná správa: {0}", s);
string sprava = "";
int posun = 1;
int posun2 = 2;

// cyklus prechádzajúci jednotlivé znaky
foreach (char c in s)
{
    int i = (int)c;
    i += posun;
    i *= posun2;
    i -= (2 + posun);
    char znak = (char)i;
    sprava += znak;
}
Console.WriteLine("Zašifrovaná správa: {0}", sprava);

// premenné pre rozšifrovanie
string z = sprava;
sprava = "";

// cyklus pre rozšifrovanie
foreach (char c in z)
{
    int i = (int)c;
    i += (2 + posun);
    i /= posun2;
    i -= posun;
    char znak = (char)i;
    sprava += znak;
}
Console.WriteLine("Rozšifrovaná správa: {0}", sprava);
Console.ReadKey();
Editováno
Avatar
burdacz
Neregistrovaný
Avatar
burdacz:25.2.2013 14:10

Ještě bych na místo

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

použil

Console.WriteLine("Napiste slovo, vetu nebo souveti.");
      string s = Console.ReadLine();
:)
Avatar
Odpovídá na
Luboš Běhounek Satik:25.2.2013 14:14

Já bych použil

const string s = "Programátor se zasekne ve sprše, protože instrukce na šampónu byly: Namydlit, omýt, opakovat.";
Console.WriteLine(s);
:)
Odpovědět
https://www.facebook.com/peasantsandcastles/
Avatar
Jan.Nygdo
Člen
Avatar
Odpovídá na mienkofax
Jan.Nygdo:12.3.2013 10:54

Ma to byt:

// hlavní cyklus
foreach (Char c in s)
{
  if (samohlasky.Contains(c.ToString()))
    pocetSamohlasek++;
  else
    if (souhlasky.Contains(c.ToString()))
      pocetSouhlasek++;
}
Odpovědět
Penzista
Avatar
Petr
Neregistrovaný
Avatar
Petr:13.3.2013 16:13

Prosim Vás, neví někdo jak by se dal tento program přepsat, abych mohl načíst text z textovyho souboru a v tomto texte by program prehazel vety ? Popripade slova ?

Avatar
Petr Nymsa
Tvůrce
Avatar
Odpovídá na
Petr Nymsa:13.3.2013 17:26

Podíve jse zde na zdější tutoriálay o práci se soubory :)http://www.it­network.cz/cshar­p/soubory

Odpovědět
Pokrok nezastavíš, neusni a jdi s ním vpřed
Avatar
NutelaCZ
Člen
Avatar
NutelaCZ:14.9.2013 22:33

Dobrý den,
mám problém v posledním kroku Cézarovy šifry, a netuším jak ho vyřešit. Jde o to ,že i když jsem do kódu vložil

// kontrola přetečení
if (i > (int)'z')
        i -= 26;
char znak = (char)i;
zprava += znak;

vždy my výsledek výjde s ASCII hodnotou. Prosím mohl by mi někdo vysvětlit co je špatně? moc děkuji.

Celý kód:

string s = "Zebra";
            Console.WriteLine("Původní zpráva {0}", s);
            string zprava = "";
            int posun = 1;

            foreach (char c in s)
            {
                int i = (int)c;
                i = i + posun;
                if (i > (int)'z')
                {
                    i = i - 26;
                }
                char znak = (char)i;
                zprava = zprava + znak;
            }
            Console.WriteLine("Zašifrovana zprava {0}", zprava);
            Console.ReadKey();
Avatar
Kit
Tvůrce
Avatar
Odpovídá na NutelaCZ
Kit:14.9.2013 23:15

Zajímavé. Když jsem to od tebe zkopíroval, tak mi to funguje jak má. Musíš tam mít ještě nějakou odlišnost, protože to co jsi poslal, je v pořádku.

http://www.itnetwork.cz/dev-lighter/201

Editováno
Odpovědět
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
NutelaCZ
Člen
Avatar
NutelaCZ:15.9.2013 13:07

Ahá tak jsem na to přišel kde je chyba, jelikož jsem zadal Zebra s velým Z tak to bralo jeho ASCII hodnotu jako 90 a psalo to následný znak [, teť jsem to přepsal s malým z a užto funguje jak má :)

Děkuji za pomoc :)

Avatar
Kit
Tvůrce
Avatar
Odpovídá na NutelaCZ
Kit:15.9.2013 13:28

Zkus se podívat i na redukovanou verzi, která dělá totéž.
http://www.itnetwork.cz/dev-lighter/201

Odpovědět
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Nejnovější komentáře jsou na konci poslední stránky.
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 10 zpráv z 115.