 
				| # | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ | 
|---|---|---|---|---|---|
| 1 |  Вступление | 1 тест | |||
| Мы начинаем серию видеоуроков по созданию алгоритма решения головоломки Судоку. Ваша задача - разобраться с правилами этой игры. найти/распечатать бумажное (!) Судоку. Решить его ручкой или карандашом. Сфоткать решение и приложить к отчёту. Отчёт отправил: 17947. Dmitry Sinitsin Выполнено за 13 час. 26 мин. [Показать отчёт] Научился: Играть в судоку рекомендуется медленно, так как это расслабляющая игра. Сложности: Найти фотоаппарат. Был найден сканер. | |||||
| 2 | Сетка для цифр | 1 тест | |||
| На этом уроке мы создадим класс Sudoku, опишем в нём две константы и создадим функцию для отображения сетки для цифр. | |||||
| 3 | Печать цифр в таблице |  | |||
| На этом уроке мы добавим метод для добавления цифр в наш Судоку. Также напишем функцию для отображения цифр в консольном экране. И свяжем их через использование делегата. В конце урока заполним наше поле случайнмыи цифрами. | |||||
| 4 | Проверка правил игры | 1 тест | |||
| На этом уроке мы наконец-таки начнём писать алгоритм. В метод PlaceDigit() мы запрограммируем проверку правил игры. Числа должны быть из верного диапозона, они не должны повторяться в строчке, в столбце и в квадрате. Под занавес мы сгенирируем случайную матрицу по всем правилам судоку. Не факт, что её можно будет решить, и что решение будет единственным. | |||||
| 5 | Загрузка головоломки с интернета | 1 тест | |||
| На этом уроке мы напишем функцию для загрузки Судоку с интернет-сайта. Через буфер обмена содержимое страницы будет размещено в текстовом файле. Алгоритм будет его анализировать и добавлять в матрицу класса Sudoku. | |||||
| 6 | Идея алгоритма - 81 цикл |  | |||
| На этом уроке мы вручную проработаем алгоритм поиска в глубь с возвращением. Твоя задача - не аналитически решить судоку, а программно, применяя описанный на уроке алгоритм. | |||||
| 7 | Рекурсивная функция поиска | 1 тест | |||
| На этом уроке мы напишем рекурсивную функцию NextDigit(), которая и будет заниматься поиском решения головоломки. Способы оптимизации алгоритма поиска решения: https://habrahabr.ru/post/173795/ | |||||
| 8 | Сохранение ответа | 1 тест | |||
| На этом уроке мы напишем функцию для сохранения решения головоломки в текстовый файл. | |||||
| 9 | Генерация головоломок |  | |||
| На этом уроке мы напишем алгоритм для формирования Судоку-головоломок, поэкспериментируем с генератором случайных полей. | |||||
| 10 | ФИНАЛЬНЫЙ УРОК | без видео | |||
| Поздравляю с завершением этого видеокурса! Запиши и опубликуй видеообзор созданной программы. Напиши, какой курс будешь проходить следующим. | |||||
| 11 | VIP. Модульное тестирование |  | |||
| На этом уроке мы познакомимся с модульным тестированием. Мы напишем небольшой калькулятор, в который добавим проект для модульного тестирования, и покажем, как это всё работает, как это нужно использовать. | |||||
| Итого: 11 видеоуроков | 2 час. 54 мин. 6 тестов | 15 чел. | |||
| Финалисты: zhikharevav, Максим, Новопашин Владимир, Максим Лапшинов, Волнухин Владимир, Tekashnik, Александр, Николай Денисов, Иван, no name, Александр, Anatoli, Freud, Татьяна, MaxB . | |||||