Hirdetés

Új hozzászólás Aktív témák

  • sztanozs

    veterán

    válasz RedSign #3736 üzenetére

    Simán működik ez felülről futó ciklussal:
    vízszint - egy állandó - ez nem is kell sornak legyen, ez elég, ha egy állandóban tárolod, a vízszint magassága úgysem lehet változó celláról cellára
    0-9 sorok domborzat

    struct Talaj{
    public int Magassag;
    public bool Elarasztva;
    }

    int sorok = 10;
    int oszlopok = 10;
    Talaj[][] terkep = new Talaj[sorok][oszlopok];
    int vizszint = rnd.NextDouble()*10;
    //...
    for (sor = 0; sor<10; sor++) {
    for (oszlop = 0; oszlop<10; oszlop ++) {
    if(sor = 0){
    if (terkep[sor][oszlop].Magassag<= vizszint) {
    terkep[sor][oszlop].Elarasztva = true;
    continue;
    }
    }
    else if(oszlop > 0 &&
    terkep[sor][oszlop].Magassag<= terkep[sor-1][oszlop-1].Magassag &&
    terkep[sor-1][oszlop-1].Elarasztva) {
    terkep[sor][oszlop].Elarasztva = true;
    continue;
    }
    else if(terkep[sor][oszlop].Magassag<= terkep[sor-1][oszlop].Magassag &&
    terkep[sor-1][oszlop].Elarasztva) {
    terkep[sor][oszlop].Elarasztva = true;
    continue;
    }
    else if(oszlop+1 < oszlopok &&
    terkep[sor][oszlop].Magassag<= terkep[sor-1][oszlop-1].Magassag &&
    terkep[sor-1][oszlop+1].Elarasztva) {
    terkep[sor][oszlop].Elarasztva = true;
    continue;
    }
    }
    }

    kb, fejből.

Új hozzászólás Aktív témák