C# - Přičítání ve for cyklu – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

C# - Přičítání ve for cyklu – .NET – Fórum – Programujte.comC# - Přičítání ve for cyklu – .NET – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené.
milamot0
Duch
3. 12. 2015   #1
-
0
-

Dobrý den, měl bych otázku ohledně přičítání. Pokusím se vysvětlit o co jde.

Mám program, který vezme vstup od uživatele (text), uloží ho do pole znaků (char []), dále uživatel zadá šifrovací klíč 1-3 místný. Klíč je uložen do pole znaků, dále pak jednotlivé znaky (čísla) jsou uloženy do jednotlivých indexů pole int[]. Šifrování má probíhat následovně. Program vezme text, ten rozdělí na jednotlivé znaky, každý znak převede na číslo podle ASCII tabulky. No a nyní by program měl vzít číslo a přičíst k němu číslo ze šifrovacího klíče, které je uloženo v indexu na pozici [0], druhý znak (teď už převedený na číslo) by si měl přičíst číslo, které je uloženo na indexu [1], třetí znak číslo uložené na indexu [2]. Čtvrtý znak si opět přičte číslo z indexu [0], pátý znak číslo z indexu [1] atd. stále dokola.

 

char[] pole = txt_vstup.Text.ToCharArray();
            int[] poleCisel = new int[pole.Length];

            char[] SifrovaciKlic = txt_klic.Text.ToCharArray();
            int[] poleKlice = new int[SifrovaciKlic.Length];

            if (SifrovaciKlic.Length == 3)
            {
                poleKlice[0] = int.Parse(SifrovaciKlic[0].ToString());
                poleKlice[1] = int.Parse(SifrovaciKlic[1].ToString());
                poleKlice[2] = int.Parse(SifrovaciKlic[2].ToString());

                for (int a = 0; a < pole.Length; a++)
                {
                    poleCisel[a] += pole[a]; --> Zde nevím jak udělat to přičítání.
                    
                }

            }
Nahlásit jako SPAM
IP: 93.190.63.–
ondrej39+1
Věrný člen
3. 12. 2015   #2
-
+1
-
Zajímavé

Udělej si proměnnou indexCounter, pomocí níž budeš evidovat který aktuální index máš použít k přičtení charu, normálně pusť ten for cyklus na převod řetězce a použij indexCounter k určení čísla na určitém indexu. V samotném for cyklu měj také podmínku když indexCounter == 3, tak ho nastav zpátky na nulu (anebo si tu podmínku udělej podle sebe, třeba když indexCounter bude 2, záleží na tom, kdy budeš hodnotu indexCounter inkrementovat).

Nahlásit jako SPAM
IP: 79.141.243.–
Inject all the dependencies!
Matěj Andrle+1
Grafoman
4. 12. 2015   #3
-
0
-

#1 milamot
Nevidím potřebu převádět statické pole na pole dynamické. String bych nechal jak je, přidal mapu (pole hodnot) a opustil tak 4 zbytečně náročné instrukce. Zmíněnou pomocnou proměnnou bych zacyklil používáním modula. (Lepší než větvení!)

Nahlásit jako SPAM
IP: 31.30.56.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 15 hostů

Podobná vlákna

Přičítání session — založil Paja2

Přičítání měsíců — založil cheeester

Vysvětlení cyklu for — založil Thalorn

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý