Курсы для программистов

Формула программиста

основатель — Волосатов Евгений Витольдович

Клуб формулистов - Ежемесячная подписка

Вступление в Клуб Формулистов на выгодных условиях для НОВЫХ участников.

После взноса  999  499 руб. вы получите подписку
в Клуб Формулистов на 30 дней и 256 байт для быстрого старта.
Байты используются для открытия более одного урока в день, по 50 байт за урок.

Стоимость 1 дня за первый месяц: всего 16 рублей.

Первый взнос - 499 руб./30 дней.

Через 30 дней будет списано 3,000 2,400 руб.
за продление подписки в Клуб на 30 дней + подарок 512 байт.

Так будет продолжаться каждые 30 дней, пока вы не отмените подписку.
Средства будет автоматически считываться с вашей карты.
Вы в любой момент сможете отказаться от продления Клуба.

Только ДО КОНЦА НЕДЕЛИ -
-50% скидка на первый взнос, всего 499 (вместо 999) рублей!
-20% скидка на ЕЖЕМЕСЯЧНЫЙ платёж!
Всего 2400 руб/месяц (вместо 3000 руб/месяц), или 80 руб./день - цена чашки кофе.


Стоимость 1 дня: 80 руб.

Хочу вступить!

Также есть другие варианты оплаты участия в КФ:

Билет в клуб формулистов на ...
30+ дней | 60 дней | 150 дней | 380 дней | 1000 дней

Внимание!
Стоимость участия в Клубе формулистов увеличивается 1 числа каждого месяца на 100 рублей.
При оформления подписки стоимость остаётся постоянной, пока подписка не будет отменена.







Первый взнос - 499 руб./30 дней + 500 байт.
Последующие взносы - 3,000 2400 руб./месяц + 512 байт.



Список уроков | фото | видео

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 FREE Вступление 00:05:08
1 тест
43 чел. ★ 5 Done
  Мы начинаем серию видеоуроков по созданию алгоритма решения головоломки Судоку.

Ваша задача -
разобраться с правилами этой игры.
найти/распечатать бумажное (!) Судоку.
Решить его ручкой или карандашом.
Сфоткать решение и приложить к отчёту.
Отчёт отправил: 9567. Максим Выполнено за 20 мин. [Показать отчёт]
Научился: Ничему 
Сложности: Решить судоку 
Комментарии: Честно говоря, никогда не любил судоку.. Такая себе задача, в которой нужно больше гадать чем думать. Я, конечно, не знаю спецальных техник по его решению, но пока так 
2 Сетка для цифр 00:16:08
1 тест
37 чел. ★ 5 Done
  На этом уроке мы создадим класс Sudoku,
опишем в нём две константы и создадим
функцию для отображения сетки для цифр.
Отчёт отправил: 9567. Максим Выполнено за 20 мин. [Показать отчёт]
Научился: Рисовать сетку для судоку 
Сложности: Ничего 
Комментарии: • Стоп, а почему именно такое условие для цикла? По сути у нас получается: (x + 1) * x, что можно преобразовать в: x^2 + x, а учитывая, что x^2 = max, так что получается: max + sqr Как по мне эта формула смотрится лучше =) • И можно же сделать, чтобы значение sqr само считалось в зависимости от max 
3 Печать цифр в таблице 00:17:57
36 чел. ★ 5 Done
  На этом уроке мы добавим метод для добавления цифр в наш Судоку.
Также напишем функцию для отображения цифр в консольном экране.
И свяжем их через использование делегата.
В конце урока заполним наше поле случайнмыи цифрами.
Отчёт отправил: 9567. Максим Выполнено за 20 мин. [Показать отчёт]
Научился: Ничему 
Сложности: Ничего 
Комментарии: А делегат вообще что-то ещё может кроме хранения ссылки на функцию с определёнными аргументами? Никаких дополнительных функций, никаких модификаций (например, необязательные аргументы). Вроде в курсе про функциональному программированию немного затрагивали эту тему и там, если я правильно помню, делегаты были немного больше того, что показано, например, в том же уроке из Новых технологий или здесь (хотя, может, я и ошибаюсь). 
4 Проверка правил игры 00:13:23
1 тест
35 чел. ★ 5 Done
  На этом уроке мы наконец-таки начнём писать алгоритм.
В метод PlaceDigit() мы запрограммируем проверку правил игры.
Числа должны быть из верного диапозона, они не должны
повторяться в строчке, в столбце и в квадрате.
Под занавес мы сгенирируем случайную матрицу по всем правилам судоку.
Не факт, что её можно будет решить, и что решение будет единственным.
Отчёт отправил: 9567. Максим Выполнено за 20 мин. [Показать отчёт]
Научился: Проверять, можно ли вставить число 
Сложности: Ничего 
Комментарии: Ещё и по квадратам нужно было проверять?? Я всю жизнь играл неправильно =) 
5 Загрузка головоломки с интернета 00:25:44
1 тест
33 чел. ★ 4.9 Done
  На этом уроке мы напишем функцию для загрузки Судоку с интернет-сайта.
Через буфер обмена содержимое страницы будет размещено в текстовом файле.
Алгоритм будет его анализировать и добавлять в матрицу класса Sudoku.

Отчёт отправил: 9567. Максим Выполнено за 30 мин. [Показать отчёт]
Научился: Заполнять судоку из файла 
Сложности: Ничего 
Комментарии: Ух, 4 вложенных цикла, неплохая ёлочка получилась =) 
6 Идея алгоритма - 81 цикл 00:11:48
32 чел. ★ 4.9 Done
  На этом уроке мы вручную проработаем алгоритм
поиска в глубь с возвращением.
Твоя задача - не аналитически решить судоку,
а программно, применяя описанный на уроке алгоритм.
Отчёт отправил: 9567. Максим Выполнено за 20 мин. [Показать отчёт]
Научился: Рекурсивному методу решения судоку 
Сложности: Ничего 
Комментарии: Можно было назвать урок "81 вложенный цикл" 
7 Рекурсивная функция поиска 00:25:24
1 тест
29 чел. ★ 5 Done
  На этом уроке мы напишем рекурсивную функцию NextDigit(),
которая и будет заниматься поиском решения головоломки.

Способы оптимизации алгоритма поиска решения:
https://habrahabr.ru/post/173795/
Отчёт отправил: 9567. Максим Выполнено за 30 мин. [Показать отчёт]
Научился: Находить решение судоку 
Сложности: Ничего 
Комментарии: • Хорошо, но можно же разделить PlaceDigit на два метода (1 - проверяет правила, 2 - записывает число), и тогда вместо ClearDigit вызывать второй • А почему в списку уроков у этого длительность - 00:00:00 
8 Сохранение ответа 00:07:28
1 тест
29 чел. ★ 5 Done
  На этом уроке мы напишем функцию для сохранения решения головоломки в текстовый файл.
Отчёт отправил: 9567. Максим Выполнено за 10 мин. [Показать отчёт]
Научился: Ничему 
Сложности: Ничего 
Комментарии: Что-то мне всё больше начинает казаться, что делегаты - не лучшее решение подобных проблем. Лучше было бы подписка на событие. То есть чтобы мы в Prigram.Start написать что-то вроде: ss = new SudokuSolver(); ss.PlaceDigit += PlateDigit; //где ss.PlaceDigit - событие У меня даже где-то был пример, как это сделать 
9 Генерация головоломок 00:15:25
25 чел. ★ 5 Done
  На этом уроке мы напишем алгоритм для формирования
Судоку-головоломок, поэкспериментируем с генератором случайных полей.
Отчёт отправил: 9567. Максим Выполнено за 10 мин. [Показать отчёт]
Научился: Генерировать случайное судоку 
Сложности: Ничего (у меня сразу всё заработало) 
Комментарии: Следующий на очереди - Сокобан, который закончит моё комбо из 5 курсов подряд. Если, конечно, ещё какого-то супер предложения не будет =) (Устал уже немного, но очень хочу его пройти) 
10 ФИНАЛЬНЫЙ УРОК без видео
17 чел. ★ 4.9 Done
  Поздравляю с завершением этого видеокурса!
Запиши и опубликуй видеообзор созданной программы.
Напиши, какой курс будешь проходить следующим.
Отчёт отправил: 9567. Максим Выполнено за 20 мин. [Показать отчёт]
Научился: Алгоритму решения судоку 
Сложности: Сложного ничего не было, но было интересно =) 
Комментарии: Интересный получился курс. На нём вы повторите рекурсию, работу с файлами и делекаты, и что самое главное, напишете программу, которая сможет решить абсолютно любое судоку (так что теперь вы сможете скоротать зимние вечера перед камином за чем-нибудь другим). Особо ничего нового на нём вы не узнаете, но это не помешает вам с интересом его проходить. А ещё это отличная практика =) Что касается следующего курса: Это будет Сокобан, который закончит моё комбо из 6 курсов подряд. Если, конечно, не будет ещё какого-то супер предложения =) (Устал уже немного, но очень хочу его пройти) 
11 VIP. Модульное тестирование 00:36:07
15 чел. ★ 5 Done
  На этом уроке мы познакомимся с модульным тестированием.
Мы напишем небольшой калькулятор, в который добавим
проект для модульного тестирования, и покажем,
как это всё работает, как это нужно использовать.
Отчёт отправил: 9567. Максим Выполнено за 20 мин. [Показать отчёт]
Научился: Создавать автоматические тесты 
Сложности: Ничего 
Комментарии: А если один и тот же урок есть в разных курсах, его нужно несколько раз проходить? 
  Итого:   11 видеоуроков 2 час. 54 мин.
6 тестов
15 чел. ★ 4.98  
  Финалисты:   zhikharevav,   Максим,   Новопашин Владимир,   Максим Лапшинов,   Волнухин Владимир,   Tekashnik,   Александр,   Николай Денисов,   Иван,   no name,   Александр,   Anatoli,   Freud,   Татьяна,   MaxB .

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





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

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

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

Ты в любой момент сможешь отписаться от рассылки.


Научился: Решать и сохранять решение Sudoku. Следующий курс, я заметил что еще комбинаторику до конца не прошёл.



Научился: Находить время и желание.
Трудности: Пока не решил за что взяться. Разбегаются глаза.. Спасибо за курс. Забыл сказать на видео, что еще стал яснее себе представил место делегатов в общем смысле программирования.