# | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ |
---|---|---|---|---|---|
1 |
![]() |
1 тест |
|||
Мы начинаем «МикроШахматы на JavaScript». В начале было поле. И было на поле 64 клетки. Цель курса - запрограммировать все правила игры в шахматы. На выходе мы получим скрипт для игры в шахматы для двух игроков, с соблюдением всех правил. На этом уроке мы выведем на экран доску, используя JavaScript и HTML. В каждом уроке кроме видео есть фото-инструкция по изменению кода. Отчёт отправил: 30514. Tom Выполнено за 18 мин. [Показать отчёт] Научился: Создал два div-блока: в первом вывел заготовку для шахматной доски с помощью элемента table, во втором подготовил место для отображения информации. |
|||||
2 | Координатное поле |
|
|||
На этом уроке мы увеличим клетки нашей доски, чтобы они были одинаковыми в любой ситуации. Уберём зазор между клетками. Так же мы раскрасим доску по правилам игры, чтобы правая-нижняя клетка была светлой. Добавим координаты слева и снизу доски, а для полноты картины добавил заголовок. Отчёт отправил: 30514. Tom Выполнено за 28 мин. [Показать отчёт] Научился: Задал ширину, высоту и цвет клеток шахматной доски. Добавил координаты клеток. |
|||||
3 | Шахматные буквы |
1 тест |
|||
На этом уроке мы отобразим «шахматные» буквы на доске. Для этого мы создадим массив, заполним его буквами, которые кодируют фигуры по нотации FEN и сделаем их отображение в таблице. Отчёт отправил: 30514. Tom Выполнено за 26 мин. [Показать отчёт] Научился: Создал массив map, в котором находится информация о клетках на шахматной доске. Создал функцию init_map, которая иницилизирует массив map, задает начальное состояние шахматной доски и размещает на ней фигуры по нотации FEN. |
|||||
4 | Фигуры на доске |
1 тест |
|||
На этом уроке наши фигуры обретут свой облик, для этого нам потребуется вспомогательная функция figure_to_html(), которая будет возвращать облик нужной нам фигуры в формате HTML-Unicode. Поиграемся с размером и цветом фигур. Отчёт отправил: 30514. Tom Выполнено за 15 мин. [Показать отчёт] Научился: Создал функцию figure_to_html, которая по FEN фигуры возвращает ее Unicode-код. С помощью этой функции отобразил фигуры на шахматной доске. |
|||||
5 | Светофор для фигур |
|
|||
На этом уроке мы будем отмечать, какими фигурами можно ходить и куда можно ходить. Пока реализуем простое правило: можно ходить на пустую клетку или клетку врага. Для этого мы добавим ещё один массив inf, для хранения возможных ходов выбранной фигуры. Так же мы доработаем функцию show_map (), чтобы она отображала подсказки из массива inf. Отчёт отправил: 30514. Tom Выполнено за 19 мин. [Показать отчёт] Научился: Создал массив inf, в котором хранится информация о возможных клетках для перемещения фигуры. |
|||||
6 | Фигурная перекличка |
2 теста |
|||
На прошлом уроке мы статично отобразили выбранную фигуру и поля, куда эта фигура может пойти. Теперь наша задача реализовать это программно. Для этого нам понадобится переменная для хранения цвета хода и реализуем функции: mark_moves_from(), can_move_from() и get_color(). Протестируем результат изменив цвет хода. Отчёт отправил: 30514. Tom Выполнено за 17 мин. [Показать отчёт] Научился: Добавил переменную move_color для хранения цвета хода. С помощью функций mark_moves_from(), can_move_from() и get_color() отобразил на шахматной доске клетки, с которых можно сделать ход. |
|||||
7 | Шахматные выборы |
|
|||
На этом уроке мы реализуем выбор фигуры для хода через клик левой кнопкой мышки по нужной клетке. Для этого мы сформируем вызов функции click_box() с координатами клетки, по которой было нажато. Отчёт отправил: 30514. Tom Выполнено за 24 мин. [Показать отчёт] Научился: Добавил обработчик нажатия на клетку шахматной доски. Сохранил координаты нажатой клетки, заполнил массив inf информацией о возможных клетках для перемещения, отобразил результаты на шахматной доске. |
|||||
8 | Завершение хода |
1 тест |
|||
На этом уроке мы напишем функцию click_box_to(), для движения фигуры в указанную клетку - нужно будет поменять место фигуры в матрице map. Ещё напишем функцию turn_move() для передачи права хода. Отчёт отправил: 30514. Tom Выполнено за 19 мин. [Показать отчёт] Научился: Добавил перемещение фигуры на новую клетку, реализовал смену хода. |
|||||
9 | ЧЕТВЕРТЬФИНАЛЬНЫЙ УРОК |
без видео |
|||
Поздравляю, четверть курса позади. Предлагаю немножко передохнуть и развлечься. Напиши, чему ты научился за первую часть этого курса. Нравится ли тебе такой способ изложения материала. Какие видишь преимущества и недостатки курса. Разыграй любую партию и запиши на видео. Можно без голоса. Отчёт отправил: 30514. Tom Выполнено за 10 мин. [Показать отчёт] Научился: Хороший курс, я получил практику в html, css и javascript. К особенностям можно отнести скриншоты перед началом урока - это помогает понять объем работы, который выполнен на уроке. Видеообзор: hty24ApioM0 |
|||||
10 | Шахматная бюрократия |
1 тест |
|||
На этом уроке мы создадим функцию, которая будет проверять, может ли фигура сходить так, как её попросят - то есть реализовать алгоритмы передвижения для каждой фигуры Отчёт отправил: 30514. Tom Выполнено за 20 мин. [Показать отчёт] Научился: Добавил функцию can_move, которая проверяет возможен ли ход из одной клетки в другую. Сделал заглушку для функции is_correct_move, которая проверяет корректность хода по шахматным правилам. |
|||||
11 | Кто есть кто? |
1 тест |
|||
На этом уроке мы реализуем функцию is_correct_move() и добавим в неё проверку всех возможных фигур. Так же добавим заглушки корректности хода для каждой фигуры. Протестируем функции, найдём ошибку в коде и исправим её. Отчёт отправил: 30514. Tom Выполнено за 26 мин. [Показать отчёт] Научился: Добавил функции, которые определяют является ли фигура королем, слоном и т.д. Добавил заглушки функций, которые проверяют корректность хода для каждой шахматной фигуры. |
|||||
12 | Лошадью ходи! |
1 тест |
|||
На этом уроке мы реализуем самую простую функцию: is_correct_knight_move() - конь ходит буквой Г :) Отчёт отправил: 30514. Tom Выполнено за 14 мин. [Показать отчёт] Научился: Реализовал функцию is_correct_knight_move(), которая проверяет корректность хода для коня. |
|||||
13 | Королевские шаги |
|
|||
На этом уроке мы реализуем функцию is_correct_king_move() Потом немного повеселимся. Увидим самый быстрый мат и отрывок из к/ф "Джентльмены удачи". Отчёт отправил: 30514. Tom Выполнено за 13 мин. [Показать отчёт] Научился: Реализовал функцию is_correct_king_move(), которая проверяет правильность хода для короля. |
|||||
14 | Горизонтальная вертикаль |
1 тест |
|||
На этом уроке мы реализуем функцию: is_correct_rook_move() Ладья ходит по вертикали или горизонтали. Отчёт отправил: 30514. Tom Выполнено за 17 мин. [Показать отчёт] Научился: Реализовал функцию is_correct_rook_move(), которая проверяет корректность хода для ладьи - смещение по вертикальной или горизонтальной линии. |
|||||
15 | Не стой на пути! |
|
|||
На этом уроке мы доработаем функцию is_correct_rook_move(). Добавим проверку, находится ли кто-то на пути фигуры. Так же мы добавим функцию on_map() для проверки нахождения координат в пределах доски. Отчёт отправил: 30514. Tom Выполнено за 20 мин. [Показать отчёт] Научился: Научился определять знак числа с помощью Math.sign. Добавил в функцию is_correct_rook_move проверку на то, находится ли на пути ладьи другая фигура. |
|||||
16 | Слоновья тропа |
|
|||
На этом уроке мы реализуем функцию: is_correct_bishop_move(), она будет похожа на is_correct_rook_move(), но с небольшими изменениями. Также оптимизируем циклы, добавим проверку границ доски. Добавим функцию is_empty(), которая будет проверять доступность хода на эту клетку. Отчёт отправил: 30514. Tom Выполнено за 16 мин. [Показать отчёт] Научился: В функции is_correct_bishop_move() добавил правила для перемещения слона на шахматной доске. |
|||||
17 | Дорогу Королеве! |
1 тест |
|||
На этом уроке мы ещё раз скопируем алгоритм проверки хода в функцию is_correct_queen_move(). С третьей попытки мы догадаемся вообще убрать проверку на корректность значений delta_x/delta_y. Ваше задание - предложить свой вариант выделения общего алгоритма из эти трёх функций - is_correct_move_queen/bishop/rook(). Отчёт отправил: 30514. Tom Выполнено за 9 мин. [Показать отчёт] Научился: Реализовал перемещение ферзя - добавил проверки в функцию is_correct_queen_move. |
|||||
18 | Мелочь пузатая |
1 тест |
|||
На этом уроке мы порефакторим наш код, выделив общий алгоритм из трёх функций: is_correct_move_queen/bishop/rook(). Отчёт отправил: 30514. Tom Выполнено за 24 мин. [Показать отчёт] Научился: Добавил функцию is_correct_line_move, в которую вынес общий код проверки возможности хода для ферзя, слона и ладьи. |
|||||
19 | ПОЛУФИНАЛЬНЫЙ УРОК |
без видео |
|||
Поздравляю, половина курса позади. Предлагаю немножко передохнуть и развлечься. Напиши, чему ты научился за вторую часть этого курса. Нравится ли тебе такой способ изложения материала. Какие видишь преимущества и недостатки курса. Разыграй любую партию и запиши на видео. Можно без голоса. Отчёт отправил: 30514. Tom Выполнено за 25 мин. [Показать отчёт] Научился: Во второй части курса МикроШахматы я реализовал перемещения всех шахматных фигур, кроме пешек. Понравился способ разделения задачи на нескольких небольших функций. Видеообзор: TQoiJxffTog |
|||||
20 | Пешкины законы |
|
|||
На этом уроке мы поговорим о пешках: + чем она отличается от других фигур? + какие у неё правила? + какие у неё исключения? Мы реализуем функцию is_correct_pawn_move() и заглушки для вспомогательных функций: is_correct_white_pawn_move() и is_correct_black_pawn_move(). Лирическое задание - найти/нарисовать интересную картинку о пешках. Отчёт отправил: 30514. Tom Выполнено за 15 мин. [Показать отчёт] Научился: Реализовал функцию is_correct_pawn_move, добавил в нее вызов двух функций is_correct_white_pawn_move и is_correct_black_pawn_move в зависимости от цвета фигуры. Сделал заглушки для этих двух функций. |
|||||
21 | Судьба пешки |
1 тест |
|||
На этом уроке мы воспользуемся сайтом draw.io для рисования схемы алгоритма пешки. На схеме отобразим следующие правила для пешек: 1. направление зависит от цвета; 2. положение может быть на горизонталях 1-6; 3. могут ходить только прямо и только на одну клетку; 4. с 1/6 горизонтали могут ходить на две клетки через пустую; 5. рубят наискосок на одно поле вперёд-влево/вправо; 6. могут рубить на битое поле (взятие на проходе); 7. на последней линии превращается в слона/коня/ладью/ферзя своего цвета. Превращение пешки будет реализовано в функции завершения хода box_click_to(). Отчёт отправил: 30514. Tom Выполнено за 1 час. 20 мин. [Показать отчёт] Научился: Создал блок-схему алгоритма проверки на перемещение белой пешки. |
|||||
22 | Пешка на охоте |
1 тест |
|||
На этом уроке мы реализуем часть алгоритма для функции is_correct_white_pawn_move() на основе схемы, созданной на прошлом уроке. Добавим заглушку для функции is_pawn_passant(). Отчёт отправил: 30514. Tom Выполнено за 23 мин. [Показать отчёт] Научился: Добавил проверку на возможность хода белой пешки только с горизонталей от 1 до 6. Добавил возможность для белой пешки брать фигуры только наискосок с соседней верхней левой или правой клетки. |
|||||
23 | Пешка в сапогах |
|
|||
На этом уроке мы доработаем алгоритм для функции is_correct_white_pawn_move() на основе блок-схемы. Так же подкорректируем нашу схему. Отчёт отправил: 30514. Tom Выполнено за 28 мин. [Показать отчёт] Научился: Реализовал перемещение белой пешки только вверх по прямой на одну клетку. Добавил возможность перемещаться на две клетки вверх, но только с горизонтали №1, если на горизонтали №2 на пути белой пешки нет другой фигуры. |
|||||
24 | Взятие на проходе шустрых пешек |
1 тест |
|||
На этом уроке мы реализуем алгоритм взятия на проходе. Для этого мы доработаем ранее созданную заглушку is_pawn_passant(). Добавим вспомогательные переменные для хранения координат возможного взятия на проходе, они нам пригодится на следующем уроке. Отчёт отправил: 30514. Tom Выполнено за 19 мин. [Показать отчёт] Научился: Добавил проверки в функцию is_pawn_passant: взятие на проходе возможно если белая пешка стоит на 4 горизонтали и битое поле находится слева или справа от пешки на одну клетку вверх. |
|||||
25 | Радар для быстрых пешек |
1 тест |
|||
-- Куда торопимся? -- Почему превышаем? -- Покажите ваши координатики... -- Пройдёмте, пешечка, в отделение... На этом уроке мы доработаем функцию click_box_to(), добавив проверку прыгнула ли пешка через клетку.прыгнула, то мы сохраняем координаты, по которым её можно поймать. Вынесем написанный алгоритм в отдельную функцию check_pawn_attack() После чего мы уберём пешку противника в отделение для сбитых фигур. Отчёт отправил: 30514. Tom Выполнено за 34 мин. [Показать отчёт] Научился: Реализовал взятие черной пешки при проходе через битое поле. |
|||||
26 | Афроамериканская пешка |
|
|||
На этом уроке мы реализуем правила движения чёрных пешек по аналогии с белыми. Для начала мы перенесём общую проверку из функций is_correct_*_pawn_move() в функцию is_correct_pawn_move(). Доработаем функцию is_pawn_passant(). Объединим функции is_correct_*_pawn_move() в общую функцию is_correct_sign_pawn_move(). Отчёт отправил: 30514. Tom Выполнено за 20 мин. [Показать отчёт] Научился: Реализовал перемещение черных пешек на одну и две клетки. |
|||||
27 | Пешкина мечта |
1 тест |
|||
На этом уроке мы исправим ошибку в функции click_box_to(), чтобы чёрные пешки тоже могли съедать после взятия на проходе. После чего мы перенесём рабочий код в функцию check_pawn_attack(). Отчёт отправил: 30514. Tom Выполнено за 19 мин. [Показать отчёт] Научился: Реализовал взятие на проходе для черных пешек. |
|||||
28 | Волшебное превращение пешки |
|
|||
На этом уроке мы реализуем алгоритм превращения пешки. Для этого нам понадобится новая функция promote_pawn(). Выбор фигуры реализуем через функцию prompt(). Добавим проверку, чтобы можно было выбирать только разрешённые фигуры. Доработаем функцию click_box_to() - добавим вызов превращения пешки если это необходимо. Отчёт отправил: 30514. Tom Выполнено за 35 мин. [Показать отчёт] Научился: Реализовал превращение пешки в ферзя, ладью, коня или слона. |
|||||
29 | ТРЕТИЙ ЧЕТВЕРТЬФИНАЛЬНЫЙ УРОК |
без видео 1 тест |
|||
Поздравляю, три четверти курса позади. Предлагаю немножко передохнуть. Напиши, чему ты научился за третью часть этого курса. Нравится ли тебе такой способ изложения материала. Какие видишь преимущества и недостатки курса. Приложи к отчёту любую шахматную карикатуру. Отчёт отправил: 30514. Tom Выполнено за 10 мин. [Показать отчёт] Научился: Третья часть курса была посвящена пешкам. Были реализованы алгоритмы перемещения пешек, взятия других фигур, взятия пешки соперника на проходе и превращения пешки в ферзя, ладью, слона или коня. |
|||||
30 | Случайный шах |
|
|||
На этом уроке мы реализуем функцию is_check(), чтобы король не ходил на клетку, которая под боем. На время теста вы уберём все пешки и добавим функцию is_check() с генерируемой случайностью шаха для всех фигур на поле. Отчёт отправил: 30514. Tom Выполнено за 13 мин. [Показать отчёт] Научился: Добавил в функцию can_move проверку на шах с помощью функции is_check. |
|||||
31 | Возврат хода |
1 тест |
|||
На этом уроке мы опишем псевдокод для функции is_check(). Добавим две глобальных переменных: move_figure и to_figure. Так же добавим функции: move_figure() и back_figure(). Модернизируем функции click_box_to() и promote_pawn() для поддержки новой системы передвижения фигур по доске. Отчёт отправил: 30514. Tom Выполнено за 29 мин. [Показать отчёт] Научился: Добавил функцию move_figure, которая перемещает фигуру и добавил функцию back_figure, которая делает возврат хода. |
|||||
32 | Король в розыске |
1 тест |
|||
На этом уроке мы добавим в функцию is_check() вызов move_figure() и back_figure(). Реализуем вспомогательную функцию find_figure() и поэкспериментируем. Отчёт отправил: 30514. Tom Выполнено за 19 мин. [Показать отчёт] Научился: Добавил функцию find_figure, с помощью которой выполнил поиск белого короля. |
|||||
33 | Служба безопасности короля |
1 тест |
|||
На этом уроке мы продолжим дорабатывать функцию is_check(). Переберём все ходы противника, чтобы исключить из возможных ходов короля клетки, которые под боем. Отчёт отправил: 30514. Tom Выполнено за 26 мин. [Показать отчёт] Научился: Реализовал функцию is_check. Теперь если король под шахом, то разрешены только те ходы, которые уберут шах от короля. |
|||||
34 | Шах вперёд - шаг назад |
1 тест |
|||
На этом уроке мы выделим часть кода из функции is_check() в новую функцию: is_check_after_move(), которая будет вызываться для проверки возможности хода. Сама же функция is_check() останется независимой и может вызываться тогда, когда нам будет нужно. Отчёт отправил: 30514. Tom Выполнено за 30 мин. [Показать отчёт] Научился: Добавил функцию is_check_after_move, которая выполняет ход и вызывает функцию is_check для проверки на шах после хода. |
|||||
35 | Информационная панель |
1 тест |
|||
На этом уроке мы выведем информацию о текущем состоянии игры. Для этого мы реализуем функцию show_info(), которая будет вызываться при каждой генерации доски. Так же нам надо будет реализовать вспомогательные функции: is_checkmate() и is_stalemate(). Доработаем функцию mark_moves_from() для подсчёта количества возможных ходов текущего игрока. Оптимизируем определение очерёдности хода. Отчёт отправил: 30514. Tom Выполнено за 28 мин. [Показать отчёт] Научился: Добавил функцию show_info, которая выводит информацию о состоянии игры: очередность хода, шах, мат, пат. Реализовал функции is_checkmate для проверки на мат и is_stalemate на пат. |
|||||
36 | Подвиг безымянной пешки |
1 тест |
|||
На этом уроке мы добавим проверку на пешечный подвиг по спасению короля: может ли она взять на проходе вражескую пешку, которая угрожает королю шахом. Для этого вынесем проверку взятия на проходе в отдельную функцию move_pawn_attack(). Для корректной работы кода нам понадобится ещё одна функция back_pawn_attack(). Отчёт отправил: 30514. Tom Выполнено за 46 мин. [Показать отчёт] Научился: Реализовал взятие на проходе пешки, которая сделала шах королю. |
|||||
37 | ФИНИШНАЯ ПРЯМАЯ |
без видео 1 тест |
|||
Быстро сказка сказывается, не быстро дело делается. Наша программа практически завершена, осталось самую малость - научить короля прятаться за ладьёй, это таинство называется "рокировка". Ваше задание. 1. Найти/нарисовать хорошую картинку на тему "Рокировки" и приложить её к отчёту. 2. Выписать все правила, при которых возможна рокировка. Отчёт отправил: 30514. Tom Выполнено за 15 мин. [Показать отчёт] Научился: Рокировка - это одновременный ход короля и ладьи. Король перемещается по своей горизонтали на две клетки влево или вправо, ладья движется к королю, "прыгает" через него и становится на первую клетку за королем. Рокировка невозможна если: 1) на пути между королем и ладьей есть другие фигуры. 2) король и ладья (с которой выполняется рокировка) ранее выполняли ход. 3) король стоит под шахом, пройдет через битое поле, встанет под шах. |
|||||
38 | Правила рокировки |
1 тест |
|||
На этом уроке мы обсудим правила рокировки короля. Так же обсудим необходимы действия для её совершения. Найти интересную картинку на тему рокировки. Отчёт отправил: 30514. Tom Выполнено за 15 мин. [Показать отчёт] Научился: Подготовил шахматную доску для реализации алгоритма рокировки. |
|||||
39 | Флаг над замком |
1 тест |
|||
На этом уроке мы создадим 4 глобальных флага: can_white_castle_left, can_white_castle_right, can_black_castle_left, can_black_castle_right. Реализуем вспомогательную функцию update_castle_flags(). Отчёт отправил: 30514. Tom Выполнено за 1 час. 0 мин. [Показать отчёт] Научился: Добавил 4 флага, которые определяют возможность делать рокировку белому и черному королю влево или вправо. |
|||||
40 | Король всемогущий |
1 тест |
|||
На этом уроке мы добавим проверку для короля, может ли он сделать рокировку - can_castle(). Добавим заглушки для вспомогательных функций: can_white_castle() и can_black_castle(). Отчёт отправил: 30514. Tom Выполнено за 25 мин. [Показать отчёт] Научился: Создал функцию can_castle, в которую добавил перемещение короля по горизонтали на две клетки влево или вправо от его начальной позиции. |
|||||
41 | Рокировка под шахом |
1 тест |
|||
На этом уроке мы доработаем функцию can_castle(), добавив проверку на шах и оптимизируем is_check(). Отчёт отправил: 30514. Tom Выполнено за 24 мин. [Показать отчёт] Научился: Добавил в функцию can_castle проверку на шах королю. |
|||||
42 | Белолевая рокировка |
1 тест |
|||
На этом уроке мы отрефакторим функцию can_castle(), добавив заглушки вспомогательных функций can_white/black_cl/cr(). Отчёт отправил: 30514. Tom Выполнено за 32 мин. [Показать отчёт] Научился: Изменил функцию can_castle. Добавил заглушки для четырех вспомогательных функции для проверки на рокировку белого и черного короля влево и вправо. |
|||||
43 | Рокировка на все времена |
1 тест |
|||
На этом уроке мы реализуем функции can_white/black_cl/cr().
Отчёт отправил: 30514. Tom Выполнено за 22 мин. [Показать отчёт] Научился: Реализовал 4 функции can_white_cr, can_white_cl, can_black_cr, can_black_cl для рокировки королей. |
|||||
44 | Ладейный паркур |
1 тест |
|||
На этом уроке мы реализуем функцию move_castling_rook(), чтобы при рокировке наши ладьи тоже перемещались. Отчёт отправил: 30514. Tom Выполнено за 22 мин. [Показать отчёт] Научился: Добавил функцию move_castling_rook, которая перемещает ладью и завершает рокировку. |
|||||
45 | ФИНАЛЬНЫЙ УРОК |
без видео |
|||
Поздравляю с завершением курса! Оставь, пожалуйста, отзыв об этом курсе. Запиши видеообзор созданной программы. Напиши, что ещё можно добавить в эту программу. Отчёт отправил: 30514. Tom Выполнено за 32 мин. [Показать отчёт] Научился: Курс понравился, я получил практику на Javascript. В программе были реализованы шахматные правила: перемещение и взятие фигур, взятие пешкой на проходе, превращение пешки, проверка на шах, мат и пат, реализована рокировка короля. Видеообзор: GCjA8pwszyE |
|||||
46 | VIP урок - Минное поле |
|
|||
На этом уроке мы реализуем функцию mark_attack(), чтобы отображать все битые поля на шахматной доске, куда может атаковать противник сразу после вашего хода. Доработаем функцию show_map() для отображения полей. Отчёт отправил: 30514. Tom Выполнено за 34 мин. [Показать отчёт] Научился: Добавил новый массив att, добавил функцию mark_attack, изменил функцию show_map для отображения битых полей. |
|||||
47 | VIP урок - Бестолковый интеллект |
|
|||
На этом уроке мы реализуем функцию doRandMove(), для случайного выбор какой фигурой пойти, Так же столкнём два "рандомайзера" на шахматной доске. Отчёт отправил: 30514. Tom Выполнено за 30 мин. [Показать отчёт] Научился: Добавил функцию doRandMove, которая выполняет случайный ход случайной фигурой. Добавил кнопку "Сделать ход", которая вызывает функцию doRandMove. |
|||||
Итого: 47 видеоуроков |
7 час. 14 мин. 32 теста |
13 чел. | |||
Финалисты: Иван Воронин, Алексей В., Tekashnik, Артём, Сергей Соколов, Yefim, Константин, Елена, Дмитрий, Andrew, Tom, Александр Шлома, MaxB . |