Изучение c# на примерах

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

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

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

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

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

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

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

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

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

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

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

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

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







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



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

# Название видеоурока Видео / Тесты Решило Рейтинг Доступ
1 FREE ИГРА - Счастливый сапёр 00:10:45
35 чел. ★ 4.9 Done
  Мы начинаем создание популярной игры сапёр.
Эта игра - отличное урпажнение для начинающего программиста.

Отчёт отправил: 16457. sergeykin Выполнено за 11 мин. [Показать отчёт]
Научился: ... взял готовую блок-схему мне в этом курсе интересен бот 
Сложности: ... 
2 ИГРА - Минная картотека 00:11:57
1 тест
29 чел. ★ 4.9 Done
  На этом уроке мы проанализируем блок-схему проекта
подготовим форму для проекта, загрузим все картинки.
Отчёт отправил: 16457. sergeykin Выполнено за 19 мин. [Показать отчёт]
Научился: ...проходил создание сапера на java, интересно это на c# 
Сложности: ... 
3 ИГРА - Классные мины 00:20:47
27 чел. ★ 5 Done
  На этом уроке мы создадим класс Mines,
в котором опишем все необходимые константы
и напишем функции Init(), PlaceMines(), PlaceCounter().

Отчёт отправил: 16457. sergeykin Выполнено за 29 мин. [Показать отчёт]
Научился: ... 
Сложности: ... 
4 ИГРА - Матрица картинок 00:25:08
27 чел. ★ 5 Done
  На этом уроке мы сделаем вывод картинок на экран.
Для этого мы напишем функцию PlaceBox(),
которая будет создавать катинки и размещать их на панель.
Потом мы создадим матрицу картинок.
В конце урока мы сделаем автоматическое
изменение картинок при ресайзинге формы.
Отчёт отправил: 16457. sergeykin Выполнено за 48 мин. [Показать отчёт]
Научился: ... 
Сложности: ... 
5 ИГРА - Карта минного поля 00:19:35
26 чел. ★ 5 Done
  На этом уроке мы отобразим минное поле.
Для это нам потребуется функция
private Bitmap ShowPicture (int number) и
private void ShowBox (int x, int y, int number)
а также делегаты для их вызова из класса Mines.
Отчёт отправил: 16457. sergeykin Выполнено за 36 мин. [Показать отчёт]
Научился: немного разобрался с делегатами на c# 
Сложности: ... 
6 ИГРА - Зелёный флаг 00:17:40
26 чел. ★ 5 Done
  На этом уроке мы сделаем обработку клика
правой кнопкой мышки для установки флага.
Для этого нам потребуется сохранять и считывать
координаты клетки в поле Tag каждого PictureBox.
Отчёт отправил: 16457. sergeykin Выполнено за 1 час. 38 мин. [Показать отчёт]
Научился: работать с мышью в c#. в предыдущем уроке допустил ошибку, которая раньше не проявлялась(( искал ошибку и так и пересматривая предыдущий урок.  
Сложности: искать ошибки в прошлых уроках 
7 ИГРА - Алгоритмический подход 00:13:27
26 чел. ★ 5 Done
  На этом уроке мы напишем основную часть
алгоритма обработки левой кнопки мышки.
Мы разделим эту задачу на несколько
вспомогательных функций, которые
вы можете реализовать самтостоятельно.
Отчёт отправил: 16457. sergeykin Выполнено за 37 мин. [Показать отчёт]
Научился: ... 
Сложности: ... 
8 ИГРА - Бомбовые алгоритмы 00:29:29
25 чел. ★ 5 Done
  На этом уроке мы допишем остальные функции и поиграем в созданную игру.
Вам останется довести программу до ума,
сделать сообщение об окончании игры и
все остальные элементы игры,
по желанию и по фантазии.
Отчёт отправил: 16457. sergeykin Выполнено за 1 час. 0 мин. [Показать отчёт]
Научился: ... 
Сложности: искать свои ошибки. 
9 ТРЕТЬФИНАЛЬНЫЙ УРОК без видео
23 чел. ★ 5 Done
  Поздравляю с завершением курса по созданию игры Сапёр.
Однако создание игры на этом ещё не закончено.
Твоя задача - придумать, что ещё можно/нужно
добавить в игру и реализовать это.
Запиши видеообзор своей игры и расскажи,
что ты добавил в неё самостоятельно.
Отчёт отправил: 16457. sergeykin Выполнено за 33 мин. [Показать отчёт]
Научился: еще одна проба записи видео 
Сложности: тяжело записывать мысли путаются 
Видеообзор: QBUzqk10vK8
10 ИИ - Как пройти игру 00:03:38
22 чел. ★ 4.9 Done
  Мы начинаем создание Искусственного Интеллекта для игры Сапёр,
для чего нам потребуется несколько этапов.
1. Описание и понимание идеи алгоритма.
2. Ручная проработка алгоритма на практике.
3. Создание класса для логики ИИ.
4. Внедрение его в наш проект для тестирования.
5. Создание бота для чужой игры Сапёр.
Отчёт отправил: 16457. sergeykin Выполнено за 10 мин. [Показать отчёт]
Научился: 1. считать карту сапера в матрицу с элементами(перечисление) 2. в сапере от виндовс первый ход всегда выигрышный, поэтому совершить первый ход мышью 3. после каждого хода перечитывать поле сапера 4. для каждой открытой клетки попробовать проставить флаги вокруг нее(например если 1 и все кроме одной клетки цифры, то ее обозначить флагом) 5. пункт четыре делать рекурсивно считывать через скриншоты игры и искать на ней возможные картинки  
Сложности: ... 
11 ИИ - Очевидные шаги 00:09:00
22 чел. ★ 4.9 Done
  На этом уроке мы отработаем базовый,
самый очевидный алгоритм разминирования,
который основан на открытии очевидных клеток.
Отчёт отправил: 16457. sergeykin Выполнено за 9 мин. [Показать отчёт]
Научился: обычно этим алгоритмом и пользуюсь 
Сложности: ... 
12 ИИ - Пересечение множеств 00:34:53
19 чел. ★ 4.9 Done
  На этом уроке у нас будет матчасть, логика ИИ.
Мы решим задачу с пересекающимися множествами
через систему неравенств. Узнаем, в каком
случае может быть единственный ответ,
и как его просчитать простой формулой,
чтобы разделить два пересекающихся
множества на три непересекающихся.
Отчёт отправил: 16457. sergeykin Выполнено за 1 час. 7 мин. [Показать отчёт]
Научился: анализировать множества 
Сложности: сложно воспринимать, что есть какое множество, надеюсь при практическом применении более прояснится 
13 ИИ - Класс группы 00:17:28
20 чел. ★ 4.9 Done
  На этом уроке мы начнём создание проекта
логики бота сапёра. Мы создадим структуру
с координатами клеток и опишем поля и
методы класса Group, в котором будут
храниться логические группы минного поля.
Отчёт отправил: 16457. sergeykin Выполнено за 13 час. 47 мин. [Показать отчёт]
Научился: попробовал работать с типом множества. Необходимые методы Add, Intersect, Except,Contains 
Сложности: ... 
14 ИИ - Элементарные алгоритмы 00:10:03
19 чел. ★ 4.9 Done
  На этом уроке мы реализуем два элементарных
алгоритма определения пустых клеток и клеток
с минами, а также проверим, как это работает.
Отчёт отправил: 16457. sergeykin Выполнено за 21 мин. [Показать отчёт]
Научился: на практике работать с некоторыми методами типа множеств 
Сложности: ... 
15 ИИ - Жучкин алгоритм 00:39:05
19 чел. ★ 4.9 Done
  На этом уроке мы внедрим наш элементарный
алгоритм в рабочую программу и создадим
кнопочку, по нажатию которой будут
отмечаться все явные мины и пустые клетки.
Минут 15 в уроке ушло на поиск ошибки.
Отчёт отправил: 16457. sergeykin Выполнено за 1 час. 29 мин. [Показать отчёт]
Научился: Программировать базовый алгоритм поиска мин. Более последовательно искать ошибки. Лучше сразу учиться искать ошибки и такие как бы ляпы в этом сильно помогают.  
Сложности: искать ошибки. 
16 ИИ - Вспомнить всё 00:23:17
19 чел. ★ 5 Done
  На этом уроке мы вспомним и повторим, что было на прошлых уроках.
Для чего нужен класс Group и как он используется для поиска мин на карте.
В этом уроке мы почти ничего писать не будем, просто освежим всё в памяти.
Отчёт отправил: 16457. sergeykin Выполнено за 51 мин. [Показать отчёт]
Научился: вроде как разобрался с алгоритмом пересечения множеств, в предыдущем объяснении было не очень непонятно 
Сложности: ... 
17 ИИ - Операции со множествами 00:15:19
4 теста
19 чел. ★ 4.9 Done
  На этом уроке мы напишем основные методы для работы со множествами:
сравнение, пересечение и вычитание множеств.
Отчёт отправил: 16457. sergeykin Выполнено за 31 мин. [Показать отчёт]
Научился: проверке методов через отладку 
Сложности: ... 
18 ИИ - Множественное тестирование 00:06:46
19 чел. ★ 4.8 Done
  На этом уроке мы проведём тестирование
созданных методов операций над множествами.
Отчёт отправил: 16457. sergeykin Выполнено за 7 мин. [Показать отчёт]
Научился: ...тестировал на предыдущем уроке 
Сложности: ... 
19 ИИ - Ботовый алгоритм InterMines 00:17:38
19 чел. ★ 4.9 Done
  На этом уроке мы наконец-таки напишем код алгоритма,
о котором мы так много говорили в предыдущих уроках.
Отчёт отправил: 16457. sergeykin Выполнено за 33 мин. [Показать отчёт]
Научился: реализовывать алгоритм со множествами 
Сложности: ... 
20 ИИ - Открыть всё! 00:21:34
19 чел. ★ 5 Done
  На этом уроке мы перепишем по новому
алгоритм открытия всех клеток с
использованием класса Group.
Ура! Открываемость минного поля значительно возросла!
Это успех :)
Отчёт отправил: 16457. sergeykin Выполнено за 1 час. 4 мин. [Показать отчёт]
Научился: до конца реализовал алгоритм пересечения множеств 
Сложности: допустил ошибку в итоге зависал алгоритм, было сложно найти 
21 ВТОРОЙ ТРЕТЬФИНАЛЬНЫЙ УРОК без видео
17 чел. ★ 4.9 Done
  Поздравляю с завершением создания Искуственного Интеллекта для решения Сапёра!

Ты молодец, написал искуственный интеллект,
и круто прокачал навыки алгоритмического мышления,
которое так важно для программиста, молодец!

Запиши видеообзор созданного бота и своей программы.

Впереди внедрение ИИ Бота для сторонней игры.
Отчёт отправил: 16457. sergeykin Выполнено за 18 мин. [Показать отчёт]
Научился: ... 
Сложности: как всегда записывать видео 
Видеообзор: tVFjP4xOouA
22 БОТ - Отмычка сапёра 00:31:45
4 теста
17 чел. ★ 4.9 Done
  На этом уроке мы начнём создавать настоящего бота,
который будет проходить сапёра из Windows XP.
Мы найдём указатель на программу,
вычислим координаты окна игры,
запрограммируем несколько
щелчков мышкой по ней.

Для работы нам потребуется именно XP версия сапёра, её можно скачать здесь:
www.videosharp.info/data/docs/winmine.exe.
Отчёт отправил: 16457. sergeykin Выполнено за 1 час. 9 мин. [Показать отчёт]
Научился: работать с функциями windows 
Сложности: непонятно почему ставятся знаки вопроса, вместо мин. 
23 БОТ - Пиксельный металлоискатель 00:25:10
4 теста
16 чел. ★ 5 Done
  На этом уроке мы начнём создавать пиксельный металлоискатель.
По цвету пикселей на экране мы будем восстанавливать значение открытой карты.
Ваша задача - довести его создание до логического завершения.
Отчёт отправил: 16457. sergeykin Выполнено за 45 мин. [Показать отчёт]
Научился: считывать пиксели. Насколько дольше будет работать если считывать места? 
Сложности: сложно определять необходимый пиксель 
24 БОТ - Совместное фото 00:31:34
15 чел. ★ 5 Done
  Считывание пикселя с экрана работает крайне медленно.
Вместо этого было решено сделать скриншот всей программы.
Чтобы дальнейшую обработку производить напрямую,
а не через медленные вызовы WinAPI методов.

Цель урока - создание "Совместного фото",
на котором будут все возможные варианты клеток в игре.
Отчёт отправил: 16457. sergeykin Выполнено за 59 мин. [Показать отчёт]
Научился: считывать скриншот программы  
Сложности: ... 
25 БОТ - Гадание по фото 00:39:50
15 чел. ★ 4.9 Done
  На этом уроке мы проанализируем созданную фотографию,
на предмет определения координат пикселей,
по цвету которых можно будет однозначно
определить значение в клетке сапёра.

Отчёт отправил: 16457. sergeykin Выполнено за 1 час. 22 мин. [Показать отчёт]
Научился: ... 
Сложности: ... 
26 БОТ - Сканер минного поля 00:23:55
15 чел. ★ 5 Done
  На этом уроке мы применим результаты анализа
в полевых условиях на запущенном минёре.
Сформируем карту по скриншоту минёра.
Отчёт отправил: 16457. sergeykin Выполнено за 14 час. 47 мин. [Показать отчёт]
Научился: приближенно сравнивать цвета 
Сложности: искать ошибки 
27 БОТ - Выход на финишную прямую 00:14:38
1 тест
14 чел. ★ 5 $
  На этом уроке мы проверим функциональность частей, которые нам нужно объединить.
Доработаем функцию doMouseClick() чтобы она умела открывать
клетки и ставить флажки по указанным координатам клеток.
Посмотрим, что необходимо переносить из предыдущего проекта.
28 БОТ - Неуправляемый Интеллект 00:16:00
14 чел. ★ 4.9 $
  На этом уроке мы внесём все необходимые изменения и запустим алгоритм.
К сожалению, он зациклился, в результате чего пришлось выходить из системы.
Но первый результат обнадёживает - клики Анализатор делал верные.
29 БОТ - Всё открыто! 00:23:23
14 чел. ★ 5 $
  На этом уроке мы завершим создание бота и
откроем все клетки минного поля с помощью нашего алгоритма.
30 ФИНАЛЬНЫЙ УРОК без видео
12 чел. ★ 5 $
  Поздравляю!
Ты одолел Боты Минёра.
Теперь ты заслуженный Минёр.

Запиши видеообзор своих программ.
Какой видеокурс ты будешь проходить следующим?
31 VIP - Хакерский подход 00:19:57
12 чел. ★ 5 $
  На этом уроке мы напишем хакерскую программу для вскрытия Сапёрного поля.
32 VIP - Жизнь у Сапёра 01:22:45
5 чел. ★ 5 $
  Напишите Игру жизнь.
Отобразите её на поле игры "Сапёр".
Для переключения клеток используйте клики ПКМ по клеткам.
  Итого:   32 видеоурока 10 час. 56 мин.
14 тестов
5 чел. ★ 4.96  
  Финалисты:   Иван Воронин,   Кирилл Шмойлов,   Tekashnik,   Yefim,   Максим Лапшинов .

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





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

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

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

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


Научился: Курс очень интересный, деньги отданы не зря - это точно! Теперь в сапере у меня рекорд во всех уровнях - 1 сек



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