Обучение программированию c#

Формула программиста
основатель — Волосатов Евгений Витольдович
1-2-3 мая - Создай online игру!

Графоциклы

В этом курсе мы будем создавать циклы
для рисования различных графических узоров,
такое занятие очень поможет прочувствовать суть циклов,
научиться их использовать легко и непринуждённо.

8 миниуроков + 4 vip-урока.
3 часа
Доступ на 15 дней.

Хочу купить!

Купить в рассрочку за мегахеши

Цена: 600 p.


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

# Название видеоурока Решило Рейтинг Доступ
1 Подготовка графики 00:15:32 99 чел. ★ 4.9 Done
  Мы начинаем серию уроков "Графические циклы".
Мы будем создавать циклы для рисования
различных графических узоров, такое
занятие очень поможет прочувствовать
суть циклов, научиться их использовать
легко и непринуждённо.
Отчёт отправил: 10193. Виктор Дерябин Выполнено за 20 мин. [Показать отчёт]
Научился: Вспомнил, как зачищать pictureBox. 
Сложности: Все просто. 
Комментарии: По д/з: В двух циклах for нарисовать все вертикальные, потом горизонтальные линии (второй скриншот) 
2 Горизонтали и вертикали 00:12:47 95 чел. ★ 4.9 Done
  На этом уроке мы начнём работать с циклами.
Создадим три новые кнопочки, для рисования
горизонтальных, вертикальных линий,
а потом и тех и других сразу.
Добавим задержку выполнения программы,
чтобы видеть, как циклы работают.
Отчёт отправил: 10193. Виктор Дерябин Выполнено за 20 мин. [Показать отчёт]
Научился: Вспомнил, как делать задержки. 
Сложности: Все просто и понятно 
Комментарии: До "д/з": Цикл с рисованием 2 линий с координатами (0,i,i,0) и (300,i,i,300). Или два цикла, чтобы рисование происходило от первой к последней по очереди, а не параллельно от начала и середины. Или в первом цикле увеличивать i до pictureBox.Width * 2, но тогда у нас линии будут уходить далеко за границы. Это если без усложнения цикла проверкой, не дошли ли мы до середины. 
3 Диагональные линии 00:15:01 92 чел. ★ 4.9 Done
  На этом уроке мы напишем циклы
для рисования диагональных линий.
Отчёт отправил: 10193. Виктор Дерябин Выполнено за 20 мин. [Показать отчёт]
Научился: В уроке говорилось о том, что сам додумал в прошлом) 
Сложности: Ничего 
Комментарии: Линию с координатами (300,300,300,300) не будет видно, поэтому цикл с ограничением a<300 от двух циклов с a<300 и a<=300 конечным результатом отличаться не будет. Поэтому смысл разбиения на два цикла может быть только в желании получить красивое последовательное рисование линий от угла к углу. После работы цикла вызывать RefreshPicture() не надо - он был вызван в последней итерации цикла внутри Sleep1(). 
4 Пучок лучей 00:15:42 91 чел. ★ 5 Done
  На этом уроке мы нарисуем ещё несколько лучей,
исходящих из одной точки, получится очень красиво.
Отчёт отправил: 10193. Виктор Дерябин Выполнено за 25 мин. [Показать отчёт]
Научился: Продумывать точки начала и конца линий. 
Сложности: Всё просто, всё понятно) 
Комментарии: Мне проще было, чтобы не запутываться, цикл во всех вариантах вести от 0 до 300, но на 9 кнопке сделал от 300 к 0, чтобы чуть потренировать мозг перестраиваться) 
5 Вложенные циклы 00:15:50 91 чел. ★ 4.9 Done
  На этом уроке мы поработаем со вложенными циклами.
Будем рисовать квадрат из квадратиков.
Отчёт отправил: 10193. Виктор Дерябин Выполнено за 20 мин. [Показать отчёт]
Научился: Применил, что знал. Останавливал видео и делал сам, потом убеждался в правильности подхода) 
Сложности: Все просто 
Комментарии: Спасибо за урок. 
6 Внутренние условия 00:15:00 89 чел. ★ 4.9 Done
  На этом уроке мы добавим условия во вложенные циклы.
А также рассмотрим варианты "оптимизации" таких циклов,
и узнаем, почем их не стоит оптимизировать.
Отчёт отправил: 10193. Виктор Дерябин Выполнено за 30 мин. [Показать отчёт]
Научился: Что оптимизация производительности может отрицательно сказаться на поддерживаемости кода. 
Сложности: Продумать код для 16 кнопки, пришлось рисовать на бумаге координаты) Также возникли сложности в взаимопонимании с Евгением Витольдовичем в том, что он сам дал такое задание - реализовать неправильное решение) 
Комментарии: Сделал 16 кнопку циклом for до 90 с рисованием с 8 сторон одновременно (видно на скриншоте) 
7 Трёхмерные циклы 00:16:49 85 чел. ★ 4.9 Done
  На этом уроке мы создадим три и четыре вложенных цикла.
Отчёт отправил: 10193. Виктор Дерябин Выполнено за 20 мин. [Показать отчёт]
Научился: Вложенные 4 раза циклы создавались на других уроках, так что знакомы. 
Сложности: Сложного ничего, главное в координатах не запутаться, чтобы понимать, что и почему происходит именно так. А то будет просто магией. 
Комментарии: "Поиграл" с кодом 18 кнопки, сделал матрицу кругов 4х4, просто меняя условия 3 и 4 циклов (скриншот 2). Ну и Sleep1() у меня переделан сразу на Sleep(int n), чтобы не создавать варианты метода под разную задержку.0 
8 Спираль Архимеда 00:18:16 80 чел. ★ 5 Done
  На этом видеоуроке мы воспользуемся тригонометрией для рисования стрелок часов и спирали Архимеда.
Отчёт отправил: 10193. Виктор Дерябин Выполнено за 25 мин. [Показать отчёт]
Научился: Вспомнил о существовании синусов и косинусов. 
Сложности: Старался делать, опережая видео. Сложнее всего было продумать рисование спирали по координатам. 
Комментарии: Спасибо за урок, очень интересно) 
9 ФИНАЛЬНЫЙ УРОК 78 чел. ★ 4.9 Done
  Дорогой друг!

Напиши, пожалуйста, отзыв и ответы
об этом мини-пакете "Графические циклы".

1. Понравились ли тебе задачи?
2. Какие навыки ты приобрёл?
3. Ставил ли ты свои эксперименты над циклами, какие?

Запиши видеообзор своей программы (по желанию).

Приложи самые эффектные скриншоты своей программы.

Какой курс ты будешь проходить следующим?
Отчёт отправил: 10193. Виктор Дерябин Выполнено за 5 мин. [Показать отчёт]
Научился: В ходе курса очень наглядно показывается работы циклов for. С ними проблем особо не возникало, но благодаря курсу теперь легче будет компилировать код в голове) 
Сложности: Все было просто, иногда пришлось подумать над координатами. 
Комментарии: 1. Задачи очень понравились. 2. Поработал с System.Drawing, проработал цикл for во многих вариантах. 3. Конечно! Пытался сначала сам все делать, периодически это выливалось в занимательные рисунки. 
10 VIP - Квадрат Гарри Поттера 00:09:39 54 чел. ★ 5 Done
  На этом уроке мы создадим несколько квадратных заклинаний.
Отчёт отправил: 10193. Виктор Дерябин Выполнено за 1 час. 30 мин. [Показать отчёт]
Научился: Работать с условиями в цикле. 
Сложности: Понять, как нарисовать 12 рисунок. Пришлось вспомнить, что такое уравнение окружности. Сложно было остановить и перестать создавать разные варианты рисунков) 
Комментарии: 1. 06.jpg: Console.Write(x < 10 || y < 10 ? "# " : ". "); 2. 11.jpg: Console.Write(x == 1 || x == 23 || y == 1 || y == 23 ? "# " : ". "); 3. 12.jpg: Console.Write(x * x + y * y <= 400 ? "# " : ". "); (уравнение окружности) 4. 13.jpg: Console.Write(x + y >= 20 && x + y < 29 ? "# " : ". "); 5. 16.jpg: Console.Write(x + y > 14 && x + y < 34 && x - y > -10 && x - y < 10 ? "# " : ". "); (может что - то перемудрил, упростить не получилось) 6. 20.jpg: Console.Write((x + y) % 2 == 0 ? "# " : ". "); 7. 25.jpg: Console.Write(x % 6 == 0 || y % 6 == 0 ? "# " : ". "); Моё заклинание: Console.Write(x * y % 24 == 0? "# " : ". ") Результат на скиншоте. Еще оно интересно с mod12 и mod6 получается) 
11 VIP. Узоры на окружности 00:23:45 64 чел. ★ 5 Done
  На этом уроке мы создадим динамические
графические круговые узоры, получится
такая красота, что глаз не оторвать!

Урок создан по материалам статьи:
http://habrahabr.ru/post/274471/

* Подсказка, как сделать отображение узоров без мигания:
ArcLine (fon, n * 2, n * 2 * (coeff - step));
ArcLine (pen, n * 2, n * 2 * coeff);


Ещё попробуйте использовать
g.Clear(Color.White);
вместо
Clear();

Отчёт отправил: 10193. Виктор Дерябин Выполнено за 1 час. 00 мин. [Показать отчёт]
Научился: Создавать залипательные анимации. 
Сложности: Всё просто. Немного повозился с реализацией остановки и настройки. 
Комментарии: Всё красиво, но не понравилось, что вся программа висит, пока не отработает полный цикл. Поэтому сделал дополнение, кнопку 22а. По нажатию она запускает анимацию, по повторному останавливает (видно на видео). Рядом записывают значения коэффициента и шага, которые можно менять на ходу. Значения проверяются при парсинге и сбрасываются на 1 и 0,02 (видно в видео) Если шаг поставить 0, то можно смотреть фигуры, которые получатся с определенным коэффициентом. Предвидя возможные вопросы - так, как сделано в видео я реализовал в первую очередь (второй скриншот). Потом уже пошли дополнения =) 
Видеообзор: https://www.youtube.com/watch?v=k8QM0HSIaSs
12 VIP. Спирограф 00:05:43 52 чел. ★ 4.9 Done
  На этом уроке мы сформулируем самостоятельное задание для завершения курса "Графические циклы".

Полезные ссылки:
https://ru.wikipedia.org/wiki/Спирограф_(игрушка)
http://www.mathplayground.com/Spiromath.html


Отчёт отправил: 10193. Виктор Дерябин Выполнено за 3 час. 00 мин. [Показать отчёт]
Научился: Создавать спирограф =) 
Сложности: Сначала было сложно решиться сделать. Применить формулу гипотрохоиды к уже реализованным функциям оказалось несложно. А потом было сложно остановиться переделывать интерфейс программы) 
Комментарии: Немного переделал интерфейс финальной версии, подписав всё. Для спирографа также сделал настройку радиуса малой окружности, расстояния от ее центра и числа кругов. Ну и два варианта кнопки - на фиксированное числом кругов выполнение и бесконечное рисование. Спасибо за курс. 
13 VIP. Спирограф от Елены 00:16:54 33 чел. ★ 5 $
  Создание программы "Спирограф" на языке C#.

На этом уроке мы узнаем, что такое "Спирограф",
как он работает, какие формулы нужно использовать,
чтобы написать эту программу с нуля самостоятельно.

На видео - пошаговая инструкция создания готовой программы.

Полезные ссылки:
https://ru.wikipedia.org/wiki/Спирограф_(игрушка)
http://www.mathplayground.com/Spiromath.html
  Итого:   13 видеоуроков общей продолжительностью 3 час. 00 мин. 32 чел. ★ 4.94  
  Финалисты:   Permitin Alexey,   Новопашин Владимир,   Николай Денисов,   Rita,   Александр,   Алексей Малышев,   Progresir,   Сергей Стефаненко,   Alexander Sidorov,   Bazel,   Tekashnik,   Владимир,   Иван,   Denis,   Алексей В.,   Denis,   Денис,   chip,   Oleg Didok ,   Василий,   Петя,   Yefim,   Иван Воронин,   Алексей|BrisK|Кривицкий,   Саша Авербух,   Никита,   Дмитрий,   zhikharevav,   WildOrc,   Андрей,   Виталий,   Bodrik_torf .

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: В ходе курса очень наглядно показывается работы циклов for. С ними проблем особо не возникало, но благодаря курсу теперь легче будет компилировать код в голове)
Трудности: Все было просто, иногда пришлось подумать над координатами.
1. Задачи очень понравились. 2. Поработал с System.Drawing, проработал цикл for во многих вариантах. 3. Конечно! Пытался сначала сам все делать, периодически это выливалось в занимательные рисунки.
Научился: Мне очень понравился курс - я люблю визуальные красивости еще со школы. Следующий курс - куда поползёт улитка (ну и попутно Web).