Avatar
GangstaFish
Člen
Avatar
GangstaFish:

Dobrý den,
pokouším se o hru podobnou klasickému oběšenci. Vybere to náhodné slovo, rozebere na chary a ty dá to pole, ale když chci porovnat, jestli v tom poli je nějaké to písmeno, vždy napíše, že tam není.

Na obrázku je ta část, kde se slovo rozdělí na písmenka a porovná se.

 
Odpovědět 25.1.2015 0:49
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na GangstaFish
Jan Vargovský:

na jakem radku ti to vyhazuje vyjimku?

Editováno 25.1.2015 2:09
 
Nahoru Odpovědět 25.1.2015 2:09
Avatar
GangstaFish
Člen
Avatar
GangstaFish:

No, ono to nevyhazuje nic, jen se to pořád tváří, že v tom slově dané písmenko není.

 
Nahoru Odpovědět 25.1.2015 2:10
Avatar
Jan Vargovský
Redaktor
Avatar
Odpovídá na GangstaFish
Jan Vargovský:

debuggovat asi neumis, co? tak ti muzu poradit vypsani do debugu(ve tvem pripade nejaky mbox) co za pismeno to testuje. z tady toho kontextu ti nikdo neporadi, protoze nikde s pismenem nic nedelas.

 
Nahoru Odpovědět 25.1.2015 2:15
Avatar
rwn
Člen
Avatar
Odpovídá na GangstaFish
rwn:

V tom, co jsi sem dal chyba není, takže musí být někde jinde. :) Možná se podívej do té tvojí metody Nahodne_slovo(), která by ti měla hádám nastavovat proměnnou slovo. Řekl bych, že proměnnou slovo máš pořád jen jako prázdný string -> neobsahuje žádné písmeno -> cyklus nenajde písmeno v něm. Jo a btw. je tu tlačítko na vložení kódu.

Nahoru Odpovědět 25.1.2015 6:42
Co můžeš naprogramovat dnes, neodkládej na zítřek.
Avatar
GangstaFish
Člen
Avatar
GangstaFish:

Slovo to úspěšně vylosuje, písmenka se taky načítají do proměnné správně. Nevím, co je špatně.

List<string> seznam = new List<string>() { "PAPRIKA", "SLON", "AUTOBAZAR", "BRAMBOR", "MUSTANG", "JABLKO", "SLUNCE", "OSTROV", "POPELNICE", "MRAVENEC", "ZEBRA", "LOKOMOTIVA" };
        Random nahoda = new Random();
        int cislo;
        string slovo;
        int score;
        int spravne;
        int spatne;
        int z;
        List<char> hadanka = new List<char>();
        char pismeno;
        char[] pole_slova;
        int ano_ne = 0;

        public Obesenec()
        {
            InitializeComponent();
        }

        private void Nahodne_slovo()
        {
            cislo = nahoda.Next(0, seznam.Count());   //0-3 >> 0-2
            slovo = seznam[cislo];
        }

        private void Vynulovat()
        {
            progressBar1.Value = 100;
            score = 0;
            spravne = 0;
            spatne = 0;
            z = 10;
            slovo = "";
            pole_slova = null;
            hadanka = null;
        }

        private void Rozdeleni_na_pismenka()
        {
            Nahodne_slovo();
            pole_slova = slovo.ToCharArray();
            for (int i = 0; i < pole_slova.Length; i++) hadanka.Add('_');
            foreach (char carka in hadanka) L_pismenka.Text += " " + carka + " ";
        }

        private void Obesenec_Load(object sender, EventArgs e)
        {
            L_pismenka.Text = null;
            Rozdeleni_na_pismenka();
        }

        #region Klavesnice_tlacitka
        private void B_ě_Click(object sender, EventArgs e)
        {
            pismeno = 'ě';
        }

        private void B_š_Click(object sender, EventArgs e)
        {
            pismeno = 'š';
        }

        private void B_č_Click(object sender, EventArgs e)
        {
            pismeno = 'č';
        }

        private void B_ř_Click(object sender, EventArgs e)
        {
            pismeno = 'ř';
        }

        private void B_ž_Click(object sender, EventArgs e)
        {
            pismeno = 'ž';
        }

        private void B_ý_Click(object sender, EventArgs e)
        {
            pismeno = 'ý';
        }

        private void B_á_Click(object sender, EventArgs e)
        {
            pismeno = 'á';
        }

        private void B_í_Click(object sender, EventArgs e)
        {
            pismeno = 'í';
        }

        private void B_é_Click(object sender, EventArgs e)
        {
            pismeno = 'é';
        }

        private void B_ó_Click(object sender, EventArgs e)
        {
            pismeno = 'ó';
        }

        private void B_q_Click(object sender, EventArgs e)
        {
            pismeno = 'q';
        }

        private void B_w_Click(object sender, EventArgs e)
        {
            pismeno = 'w';
        }

        private void B_e_Click(object sender, EventArgs e)
        {
            pismeno = 'e';
        }

        private void B_r_Click(object sender, EventArgs e)
        {
            pismeno = 'r';
        }

        private void B_t_Click(object sender, EventArgs e)
        {
            pismeno = 't';
        }

        private void B_z_Click(object sender, EventArgs e)
        {
            pismeno = 'z';
        }

        private void B_u_Click(object sender, EventArgs e)
        {
            pismeno = 'u';
        }

        private void B_i_Click(object sender, EventArgs e)
        {
            pismeno = 'i';
        }

        private void B_o_Click(object sender, EventArgs e)
        {
            pismeno = 'o';
        }

        private void B_p_Click(object sender, EventArgs e)
        {
            pismeno = 'p';
        }

        private void B_ú_Click(object sender, EventArgs e)
        {
            pismeno = 'ú';
        }

        private void B_a_Click(object sender, EventArgs e)
        {
            pismeno = 'a';
        }

        private void B_s_Click(object sender, EventArgs e)
        {
            pismeno = 's';
        }

        private void B_d_Click(object sender, EventArgs e)
        {
            pismeno = 'd';
        }

        private void B_f_Click(object sender, EventArgs e)
        {
            pismeno = 'f';
        }

        private void B_g_Click(object sender, EventArgs e)
        {
            pismeno = 'g';
        }

        private void B_h_Click(object sender, EventArgs e)
        {
            pismeno = 'h';
        }

        private void B_j_Click(object sender, EventArgs e)
        {
            pismeno = 'j';
        }

        private void B_k_Click(object sender, EventArgs e)
        {
            pismeno = 'k';
        }

        private void B_l_Click(object sender, EventArgs e)
        {
            pismeno = 'l';
        }

        private void B_ů_Click(object sender, EventArgs e)
        {
            pismeno = 'ů';
        }

        private void B_y_Click(object sender, EventArgs e)
        {
            pismeno = 'y';
        }

        private void B_x_Click(object sender, EventArgs e)
        {
            pismeno = 'x';
        }

        private void B_c_Click(object sender, EventArgs e)
        {
            pismeno = 'c';
        }

        private void B_v_Click(object sender, EventArgs e)
        {
            pismeno = 'v';
        }

        private void B_b_Click(object sender, EventArgs e)
        {
            pismeno = 'b';
        }

        private void B_n_Click(object sender, EventArgs e)
        {
            pismeno = 'n';
        }

        private void B_m_Click(object sender, EventArgs e)
        {
            pismeno = 'm';
        }

        private void B_mezera_Click(object sender, EventArgs e)
        {
            pismeno = ' ';
        }
        #endregion
        //VŠECHNY BUTTONY PÍSMEN JSOU TAM

        private void button2_Click(object sender, EventArgs e)  //NEJDE
        {
            this.Text = pismeno.ToString();
            for (int i = 0; i < pole_slova.Length; i++)
            {
                if (pole_slova[i] == pismeno) ano_ne = 1;
            }
            if (ano_ne == 1) MessageBox.Show("ANO", slovo);
            else MessageBox.Show("NE", slovo);
        }
 
Nahoru Odpovědět 25.1.2015 10:25
Avatar
rwn
Člen
Avatar
Odpovídá na GangstaFish
rwn:

Ehm, tu tvojí databázi slov máš velkýma písmenama a ptáš se jestli obsahují malá písmenka. Teoreticky by ti mohlo stačit proměnnou pismeno upravit na velká písmena. :)

pismeno = pismeno.ToUpper();
Editováno 25.1.2015 10:51
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět  +1 25.1.2015 10:47
Co můžeš naprogramovat dnes, neodkládej na zítřek.
Avatar
GangstaFish
Člen
Avatar
GangstaFish:

Jej, tak to jo :D Už to funguje :D
Dík :)

 
Nahoru Odpovědět 25.1.2015 11:06
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 8 zpráv z 8.