Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович
Вебинар «Мир! Труд! Май! Для программиста.» начнётся через 22 час. 41 мин.

Графические циклы / Диагональные линии

  • На этом уроке мы напишем циклы
    для рисования диагональных линий.
  • Дата отправки отчёта: 11 декабря 2015 г.
  • Задание выполнено: за 25 мин.
  • Чему научился: Повторил проверку граничных условий цикла.
  • Что было сложным: Сложностей не было.
  • Комментарии: По поводу оптимизации и прочего. В данном случае нет разницы используется один цикл с внутренней дополнительной проверкой условия или два цикла без внутренней проверки условия. Ведь если рассматривать случай с двумя циклами, то проверка счетчика во втором цикла не дается бесплатно. Но это все на словах и надуманно, для оценки реальной производительности надо всегда замерять и если по результатам получится, что именно в этих циклах наблюдается эффект бутылочного горлышка и это критично для программы, то да, стоит что-то изменить, причем не просто добавив или убрав if, а пересмотрев алгоритм.
  • Оценка видео-уроку:
Отчёт от 7276 за Графические циклы / Диагональные линии


Отчёт от 7276 за Графические циклы / Диагональные линии




Оцени работу

 
Сохранить страницу:

1. Евгений Волосатов
Евгений Волосатов
ответить
→  Ильшат  # Графические циклы / Диагональные линии / 2015-12-12 11:35

Всегда нужно тестировать, верно подметил.


  • Отчёт оценивали:
    8118Юрий +1   2639Морозов Юрий Александрович+1   2146Иван+1   6391Владимир+1   6452Кирилл Шмойлов+1   7645Александр Львович+1   6925Артём+1   3747Сергей+1   7901Влад+1   7448Sergey Shumskiy+1   5219Nromik+1   1Евгений Волосатов+1   6203Николай (nick27m)+1   4992Николай+1   6458Илья+1   6958Кирилл+1   2327FonKessel+1   3664данила+1   7164Ирина0   6649Даниил+1   1232Фомичева Наталья+1  

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: В уроке говорилось о том, что сам додумал в прошлом)
Линию с координатами (300,300,300,300) не будет видно, поэтому цикл с ограничением a<300 от двух циклов с a<300 и a<=300 конечным результатом отличаться не будет. Поэтому смысл разбиения на два цикла может быть только в желании получить красивое последовательное рисование линий от угла к углу. После работы цикла вызывать RefreshPicture() не надо - он был вызван в последней итерации цикла внутри Sleep1().
Научился: Циклы, циклы, циклы...
Вопрос касается оценки производительности. Наличие нескольких циклов может быть ресурсозатратно в части инициализации переменных при определении циклов, а может наоборот, повторное рисование сложной геометрической фигуры повлечет затраты ресурсов. Нужно смотреть на конкретную задачу. В данном случае выбор решения не существенен.