Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович

Явный Сапёр / Волшебный метод

  • На этом уроке мы создадим
    волшебный методcellOpen().
    Именно в нём кроется вся магия логики игры.
  • Дата отправки отчёта: 13 октября
  • Задание выполнено: за 1 час. 30 мин.
  • Чему научился: Išmokau ir supratau kaip reikia žaisti minesweeper, pilnai supratau visus programos elementus ir komponentus.
  • Что было сложным: Nieko, viskas buvo lengva, nes prieš tai viskas buvo gerai paaiškinta.
  • Комментарии: lange NR1. programa kuri išveda "" :)!!!!YOU WIN GAME!!!! :) "", kai minesCount ==0, bet galima kiekviena karta kai su palite pastatai ant langelio veliava, minesCount-- mažėja vienetu,  todėl galima neatverti ne vieno lango ir iškart pastatyti veliavu  kiek yra N_MINES ir tu laimejai.
    lange NR2.  žaidimas baigtas kai paspaudi ant minos.
    lange NR3. žaidimo eigoje vaizduojamas minu skaičius.
    iki lango numeris 4 yra keli žaidimo trukumai. Pirmas kai pastatai veliavą ir paspaudi ant skaičiaus atsidaro aplink jo laukai, kartai atsidaro miną, nes veliava pastatyta ne tinkamoje vietoje, bet žaidimas tesiasi ir neatsiveria visos minos.
    antras minusas laimėjus ar pralaimėjus žaidimą, ir statusvbar išvedus tekstus, su pelite galima atidaryneti laukus ir statyti veliavas.
    trečias minusas kad galima pristatyti veliavų ir taip laimeti, bet neatvesus jokio lauko.
    Aš šituos trukumus pašalinau ir langai NR4 ir NR5 gerai funkcianuoja.
    Kad tai butu pašalinta aš padariau programoje šiuos pakeitimus
    sukuriau kintamaji
    private int opencell =0;
    metoduose leftButton() ir rightButton() parašiau šias kodo eilutes
    if(minesCount==0)
                opencell = OpenTopCell();
            if(( N_ROWS * N_COLS - opencell==N_MINES)) {
                result = 1;
                statusbar.setText(" :)!!!!YOU WIN GAME!!!! :) ");
            }
    metode openNear() parašiau:
    if (top[mx][my] == IMG_OPEN) {
                            if (map[mx][my] == IMG_MINE)
                            openAllMines();
                        }
    metode openAllMines() parašiau
    result = -1;
            statusbar.setText("GAME OVER");
    sukuriau metoda OpenTopCell
    public int OpenTopCell()// Metodas skaičiuojantis atvertus laukus
        {
            int t=0;
            for(int y = 0; y < N_ROWS; y++)
                for(int x = 0; x < N_COLS; x++)
                if(top [x][y]== IMG_OPEN)
                    t++;
            return t;
        }
    ir į mousePressed() parašiau kiekvienam mygtukui:
    if(result!=1 && result!=-1)
    pakeitimai pavaizduoti faile NR2.

  • Оценка видео-уроку:
Отчёт от 11317 за Явный Сапёр / Волшебный метод


Отчёт от 11317 за Явный Сапёр / Волшебный метод




Оцени работу

 
Сохранить страницу:

8275. Tekashnik
Tekashnik
ответить
→  Евгений Витольдович  # Явный Сапёр / Волшебный метод / 2016-10-14 01:19

А ваши студенты все по русски понимают*?


1. Евгений Витольдович
Евгений Витольдович
ответить
→  Reinis Stacevič  # Явный Сапёр / Волшебный метод / 2016-10-13 18:00

Šaunolis, kad pastebėjai ir ištaisai klaidas.


  • Отчёт оценивали:
    11405vdimae+1   6452Lik_Kirill+1   4395Денис+1   10670Сергей Соколов+1   8520Сергей Колупаев+1   10494Алексей В.+1   10673Алексей Хонин+1   1Евгений Витольдович+1   10100Александр Заскотченко+1   459Сергей Сергеевич+1   10558Иван Воронин+1   4467Alcatraz+1   6925Артём+1   689Igorenzia+1   8275Tekashnik+1   4004Елена+1   7119Новопашин Владимир+1   10365Rita+1   11017Владимир Петреченко+1   2639Морозов Юрий Александрович+1  

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: Писать рекурсивные функции на JAVA
Трудности: Во время написания кода неправильно поставил один восклицательный знак и плюс вместо paintComponent написал просто paint провозился очень долго. Так же не смог определить, программа иногда как-то работает странно рекурсия открывает не все ячейки сам не смог разобраться. Думаю может в следующем уроке автор поможет разобраться.
Если можно автора когда он заканчивает урок проматывать код программы вверх и вниз что б можно было код пересмотреть заново. Допустил ошибку в написании пришлось пересматривать несколько раз с нуля весь видео урок.
Научился: Открывать зоны вокруг пустых клеток.
Трудности: Если щелкаешь левой кнопкой мыши на уже открытой клетке с отмеченными минами, все закрытые клетки вокруг нее открываются, но если среди них есть пустая, то вокруг нее клетки не открывались.
Не знаю, я что-то просмотрела или в уроке есть та же проблема. Исправила.