# | Название видеоурока | Видео / Тесты | Решило | Рейтинг | Доступ |
---|---|---|---|---|---|
1 |
![]() |
4 теста |
|||
Мы начинаем серию уроков "Графические циклы". Мы будем создавать циклы для рисования различных графических узоров, такое занятие очень поможет прочувствовать суть циклов, научиться их использовать легко и непринуждённо. Отчёт отправил: 10193. Виктор Дерябин Выполнено за 20 мин. [Показать отчёт] Научился: Вспомнил, как зачищать pictureBox. Сложности: Все просто. Комментарии: По д/з: В двух циклах for нарисовать все вертикальные, потом горизонтальные линии (второй скриншот) |
|||||
2 | Горизонтали и вертикали |
2 теста |
|||
На этом уроке мы начнём работать с циклами. Создадим три новые кнопочки, для рисования горизонтальных, вертикальных линий, а потом и тех и других сразу. Добавим задержку выполнения программы, чтобы видеть, как циклы работают. Отчёт отправил: 10193. Виктор Дерябин Выполнено за 20 мин. [Показать отчёт] Научился: Вспомнил, как делать задержки. Сложности: Все просто и понятно Комментарии: До "д/з": Цикл с рисованием 2 линий с координатами (0,i,i,0) и (300,i,i,300). Или два цикла, чтобы рисование происходило от первой к последней по очереди, а не параллельно от начала и середины. Или в первом цикле увеличивать i до pictureBox.Width * 2, но тогда у нас линии будут уходить далеко за границы. Это если без усложнения цикла проверкой, не дошли ли мы до середины. |
|||||
3 | Диагональные линии |
1 тест |
|||
На этом уроке мы напишем циклы для рисования диагональных линий. Отчёт отправил: 10193. Виктор Дерябин Выполнено за 20 мин. [Показать отчёт] Научился: В уроке говорилось о том, что сам додумал в прошлом) Сложности: Ничего Комментарии: Линию с координатами (300,300,300,300) не будет видно, поэтому цикл с ограничением a<300 от двух циклов с a<300 и a<=300 конечным результатом отличаться не будет. Поэтому смысл разбиения на два цикла может быть только в желании получить красивое последовательное рисование линий от угла к углу. После работы цикла вызывать RefreshPicture() не надо - он был вызван в последней итерации цикла внутри Sleep1(). |
|||||
4 | Пучок лучей |
1 тест |
|||
На этом уроке мы нарисуем ещё несколько лучей, исходящих из одной точки, получится очень красиво. Отчёт отправил: 10193. Виктор Дерябин Выполнено за 25 мин. [Показать отчёт] Научился: Продумывать точки начала и конца линий. Сложности: Всё просто, всё понятно) Комментарии: Мне проще было, чтобы не запутываться, цикл во всех вариантах вести от 0 до 300, но на 9 кнопке сделал от 300 к 0, чтобы чуть потренировать мозг перестраиваться) |
|||||
5 | Вложенные циклы |
1 тест |
|||
На этом уроке мы поработаем со вложенными циклами. Будем рисовать квадрат из квадратиков. Отчёт отправил: 10193. Виктор Дерябин Выполнено за 20 мин. [Показать отчёт] Научился: Применил, что знал. Останавливал видео и делал сам, потом убеждался в правильности подхода) Сложности: Все просто Комментарии: Спасибо за урок. |
|||||
6 | Внутренние условия |
1 тест |
|||
На этом уроке мы добавим условия во вложенные циклы. А также рассмотрим варианты "оптимизации" таких циклов, и узнаем, почем их не стоит оптимизировать. Отчёт отправил: 10193. Виктор Дерябин Выполнено за 30 мин. [Показать отчёт] Научился: Что оптимизация производительности может отрицательно сказаться на поддерживаемости кода. Сложности: Продумать код для 16 кнопки, пришлось рисовать на бумаге координаты) Также возникли сложности в взаимопонимании с Евгением Витольдовичем в том, что он сам дал такое задание - реализовать неправильное решение) Комментарии: Сделал 16 кнопку циклом for до 90 с рисованием с 8 сторон одновременно (видно на скриншоте) |
|||||
7 | Трёхмерные циклы |
1 тест |
|||
На этом уроке мы создадим три и четыре вложенных цикла.
Отчёт отправил: 10193. Виктор Дерябин Выполнено за 20 мин. [Показать отчёт] Научился: Вложенные 4 раза циклы создавались на других уроках, так что знакомы. Сложности: Сложного ничего, главное в координатах не запутаться, чтобы понимать, что и почему происходит именно так. А то будет просто магией. Комментарии: "Поиграл" с кодом 18 кнопки, сделал матрицу кругов 4х4, просто меняя условия 3 и 4 циклов (скриншот 2). Ну и Sleep1() у меня переделан сразу на Sleep(int n), чтобы не создавать варианты метода под разную задержку.0 |
|||||
8 | Спираль Архимеда |
2 теста |
|||
На этом видеоуроке мы воспользуемся тригонометрией для рисования стрелок часов и спирали Архимеда.
Отчёт отправил: 10193. Виктор Дерябин Выполнено за 25 мин. [Показать отчёт] Научился: Вспомнил о существовании синусов и косинусов. Сложности: Старался делать, опережая видео. Сложнее всего было продумать рисование спирали по координатам. Комментарии: Спасибо за урок, очень интересно) |
|||||
9 | ФИНАЛЬНЫЙ УРОК |
без видео |
|||
Дорогой друг! Напиши, пожалуйста, отзыв и ответы об этом мини-пакете "Графические циклы". 1. Понравились ли тебе задачи? 2. Какие навыки ты приобрёл? 3. Ставил ли ты свои эксперименты над циклами, какие? Запиши видеообзор своей программы (по желанию). Приложи самые эффектные скриншоты своей программы. Какой курс ты будешь проходить следующим? Отчёт отправил: 10193. Виктор Дерябин Выполнено за 5 мин. [Показать отчёт] Научился: В ходе курса очень наглядно показывается работы циклов for. С ними проблем особо не возникало, но благодаря курсу теперь легче будет компилировать код в голове) Сложности: Все было просто, иногда пришлось подумать над координатами. Комментарии: 1. Задачи очень понравились. 2. Поработал с System.Drawing, проработал цикл for во многих вариантах. 3. Конечно! Пытался сначала сам все делать, периодически это выливалось в занимательные рисунки. |
|||||
10 | VIP - Квадрат Гарри Поттера |
1 тест |
|||
На этом уроке мы создадим несколько квадратных заклинаний.
Отчёт отправил: 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. Узоры на окружности |
|
|||
На этом уроке мы создадим динамические графические круговые узоры, получится такая красота, что глаз не оторвать! Урок создан по материалам статьи: 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. Спирограф |
|
|||
На этом уроке мы сформулируем самостоятельное задание для завершения курса "Графические циклы". Полезные ссылки: https://ru.wikipedia.org/wiki/Спирограф_(игрушка) http://www.mathplayground.com/Spiromath.html Отчёт отправил: 10193. Виктор Дерябин Выполнено за 3 час. 00 мин. [Показать отчёт] Научился: Создавать спирограф =) Сложности: Сначала было сложно решиться сделать. Применить формулу гипотрохоиды к уже реализованным функциям оказалось несложно. А потом было сложно остановиться переделывать интерфейс программы) Комментарии: Немного переделал интерфейс финальной версии, подписав всё. Для спирографа также сделал настройку радиуса малой окружности, расстояния от ее центра и числа кругов. Ну и два варианта кнопки - на фиксированное числом кругов выполнение и бесконечное рисование. Спасибо за курс. |
|||||
13 | VIP. Спирограф от Елены |
|
|||
Создание программы "Спирограф" на языке C#. На этом уроке мы узнаем, что такое "Спирограф", как он работает, какие формулы нужно использовать, чтобы написать эту программу с нуля самостоятельно. На видео - пошаговая инструкция создания готовой программы. Полезные ссылки: https://ru.wikipedia.org/wiki/Спирограф_(игрушка) http://www.mathplayground.com/Spiromath.html |
|||||
Итого: 13 видеоуроков |
3 час. 00 мин. 14 тестов |
51 чел. | |||
Финалисты: Permitin Alexey, Новопашин Владимир, Николай Денисов, Rita, Александр, Алексей Малышев, Progresir, Сергей Стефаненко, Alexander Sidorov, Bazel, Tekashnik, Владимир, Иван, Denis, Алексей В., Denis, Денис, Chip, Oleg Didok , Василий, Петя, Yefim, Иван Воронин, Алексей|BrisK|Кривицкий, Саша Авербух, Никита, Дмитрий, zhikharevav, WildOrc, Андрей, Виталий, Bodrik_torf, Danil42Russia, Dmitry Sinitsin, Денис, Дмитрий, Фомичева Наталья, Дмитрий Че, Александр Балбашов, Кирилл, Николай, AlliZzeN, Максим Лапшинов, Артём Нагорный, Дмитрий, no name, ES35, Anatoli, MaxB, Tim, Tom . |