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

Формула программиста
основатель — Волосатов Евгений Витольдович

Итератор / Итератор. Перебор простых чисел.

  • На этом уроке мы сдеаем так, чтобы наш класс возвращал в цикл
    только простые числа, как и было задуманно изначально.
  • Дата отправки отчёта: 7 апреля 2016 г.
  • Задание выполнено: за 15 мин.
  • Чему научился: Узнал что можно напрямую указывать методам к какому интерфейсу им обращаться без делания (ну и слово) их публичными
  • Что было сложным: Все на уровне всех уроков
  • Комментарии:  
  • Оценка видео-уроку:
Отчёт от 1967 за Итератор / Итератор. Перебор простых чисел.




Оцени работу

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

1967. Дмитрий
Дмитрий
ответить
→  Евгений Волосатов  # Професишарп / Итератор. Перебор простых чисел. / 2016-04-07 13:43

Ага, прям так и хотел сказать :)


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Дмитрий  # Професишарп / Итератор 4 / 2016-04-07 11:52

* без присвоения им публичного доступа.


  • Отчёт оценивали:
    6925Артём+1   6452Кирилл Шмойлов+1   4395Денис+1   9544Даниил Степаненко+1   1Евгений Волосатов+1   689Igorenzia+1   4467Alcatraz+1   36Данил+1   4992Николай+1   2721mikemet+1   459Сергей Сергеевич+1   9408Олег+1   8886Михаил Ермишин+1   7645Александр Львович+1   9332Dima+1   6861Den Andreevich+1   2146Иван+1   9820Konstantin+1   8938mr.whirl+1   4004Елена+1  

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Глубже разобрался с задачей поиска простых чисел.
Трудности: Не мог понять почему в методе IsPrime мы крутим цикл до prime/2, а не до prime-1. Но потом прочитал, что можно вообще до Math.Sqrt(prime). Также, не смог оценить мат. сложность реализации (в смысле О большого).
Стало интересно оценить скорость работы алгоритма. Использовал StopWatch. Выяснилось, что дополнительный вызов метода IsPrime значительно замедляет поиск. А переустановка SetMax(number) на каждом шаге основного цикла - здорово ускоряет работу (порядка тысячи раз). Также логика подсказывает, что при вызове IsPrime() после каждого инкремента выполняется много лишней работы, так как перебираются каждый раз практически одни и те же числа. Не лучше ли вести какой-то список уже найденных простых чисел?
Научился: Искать простые числа
Трудности: Пока я не поняла, в чем выигрыш при использовании Enumerator, Enumerable
К реализации IEnumerator.MoveNext() и т.п. уже приходила сама в одном из предыдущих уроков. Но отказалась от нее, поскольку в уроке требовалось сделать через public.