c# index out of bounds of array Vyřešeno

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

agil
Level 2
Level 2
Příspěvky: 181
Registrován: říjen 10
Pohlaví: Muž
Stav:
Offline

Re: c# index out of bounds of array

Příspěvekod agil » 08 črc 2013 12:55

no ted to píše, že b nevadí, ale a vadí ,hodnoty v nem jsou ruzny ..12.13.19...proste cokoliv
immortal-world.net - přijďte si zahrát!

Reklama
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: c# index out of bounds of array

Příspěvekod CZechBoY » 08 črc 2013 12:59

no musíš zkontrolovat jestli to fakt nepřesahuje a porovnat si to sám
jestli se Array.y (Array.x) mění tak to zkontroluj
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW

agil
Level 2
Level 2
Příspěvky: 181
Registrován: říjen 10
Pohlaví: Muž
Stav:
Offline

Re: c# index out of bounds of array

Příspěvekod agil » 08 črc 2013 13:04

ted nerozumim, vždyt to mam správne napsany a array.y/x je pevně daná hodnota, to pole se přece nemění
immortal-world.net - přijďte si zahrát!

Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: c# index out of bounds of array

Příspěvekod CZechBoY » 08 črc 2013 13:28

tak to teda funguje?
napiš stávající kod
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW

agil
Level 2
Level 2
Příspěvky: 181
Registrován: říjen 10
Pohlaví: Muž
Stav:
Offline

Re: c# index out of bounds of array

Příspěvekod agil » 08 črc 2013 14:39

No právě že nefunguje

Kód: Vybrat vše

  if ( b< Array.y )
                                if (Array.pole[a, b + 1] != 1)
                            {
                                //dolu
                                Array.poleM[a, b + 1] += 1;

                                //dolu
                            }
immortal-world.net - přijďte si zahrát!

Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: srpen 08
Bydliště: Brno
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: c# index out of bounds of array

Příspěvekod CZechBoY » 08 črc 2013 14:40

na jakým řádku to píše tu chybu?
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW

agil
Level 2
Level 2
Příspěvky: 181
Registrován: říjen 10
Pohlaví: Muž
Stav:
Offline

Re: c# index out of bounds of array

Příspěvekod agil » 08 črc 2013 18:52

if (Array.pole[a, b + 1] != 1)

ale nekdy to jde, enkdy nejde, podle toho jak se to vygeneruje

--- Doplnění předchozího příspěvku (08 Črc 2013 19:28) ---

NO, TAK SEM TO KONEČNĚ VYŘEŠIL, kdyby nekdo treba potreboval, tady je finalni kod

Kód: Vybrat vše

                for (int a = 0; a < Array.x; a++)
                {
                    for (int b = 0; b < Array.y; b++)
                    {


                        if (Array.pole[a, b] == 1)
                        {
                            Array.poleM[a, b] = 0;


                            if (b + 1 < Array.y)
                            {
                                if (Array.pole[a, b + 1] != 1)
                                {
                                    //dolu
                                    Array.poleM[a, b + 1] += 1;

                                    //dolu
                                }

                            }

                            if (a + 1 < Array.x)
                            {

                                if (Array.pole[a + 1, b] != 1)
                                {
                                    //doprava
                                    Array.poleM[a + 1, b] += 1;
                                    //doprava
                                }
                            }

                            if (a - 1 >= 0)
                            {

                                if (Array.pole[a - 1, b] != 1)
                                {
                                    //doleva
                                    Array.poleM[a - 1, b] += 1;
                                    //doleva
                                }
                            }

                            if (b - 1 >= 0)
                            {

                                if (Array.pole[a, b - 1] != 1)
                                {
                                    //nahoru
                                    Array.poleM[a, b - 1] += 1;
                                    //nahoru
                                }
                            }
                            if ((b - 1 >= 0) && (a - 1 >= 0))
                            {

                                if (Array.pole[a - 1, b - 1] != 1)
                                {
                                    //vlevo nahore
                                    Array.poleM[a - 1, b - 1] += 1;
                                    //vlevo nahore
                                }
                            }

                            if ((b - 1 >= 0) && (a + 1 < Array.x))
                            {
                                if (Array.pole[a + 1, b - 1] != 1)
                                {
                                    //vpravo nahore
                                    Array.poleM[a + 1, b - 1] += 1;
                                    //vpravo nahore
                                }
                            }

                            if ((b + 1 < Array.y) && (a - 1 >= 0))
                            {
                                if ((Array.pole[a - 1, b + 1] != 1))
                                {
                                    //vlevo dole
                                    Array.poleM[a - 1, b + 1] += 1;
                                    //vlevo dole
                                }
                            }

                            if ((b + 1 < Array.y) && (a + 1 < Array.x))
                            {

                                if ((Array.pole[a + 1, b + 1] != 1))
                                {
                                    //vpravo dole
                                    Array.poleM[a + 1, b + 1] += 1;
                                    //vpravo dole
                                }
                            }
                        }
                    }
                }
immortal-world.net - přijďte si zahrát!


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Valve index Příloha(y)
    od Pedrossos » 20 kvě 2025 17:38 » v Problémy s hardwarem
    2
    1916
    od Pedrossos Zobrazit poslední příspěvek
    10 čer 2025 11:51
  • Index webu Příloha(y)
    od Tondaaaa » 18 srp 2024 00:15 » v Web-tipy a vaše weby
    5
    11920
    od HelFix Zobrazit poslední příspěvek
    28 srp 2024 12:14

Zpět na “Programování a tvorba webu”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 3 hosti