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

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

Комбинаторика / VIP. Простые числа. Оптимизация алгоритма

  • Пишем функцию для поиска простых чисел и
    поэтапно оптимизируем её в двух направлениях.
  • Дата отправки отчёта: 13 сентября 2015 г.
  • Задание выполнено: за 4 час. 00 мин.
  • Чему научился: Познакомился с циклом foreach, увидел интересное применение делегатов. Также научился тестировать функции, сравнивая их друг с другом.
  • Что было сложным: Самым сложным было понять, как используется делегат.
    А еще самым сложным, но чуть проще, было понять способ тестирования.
  • Комментарии: compare_functions(max, is_prime_each_by_*);
    Я думал, что max - это максимальное найденное текущей функцией простое число.
  • Оценка видео-уроку:
Отчёт от 1901 за Комбинаторика / VIP. Простые числа. Оптимизация алгоритма


Отчёт от 1901 за Комбинаторика / VIP. Простые числа. Оптимизация алгоритма




Оцени работу

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

1. Евгений Волосатов
Евгений Волосатов
ответить
→  Neverwinter 2  # Комбинаторика / VIP. Простые числа. Оптимизация алгоритма / 2015-09-13 18:00

Понравился, урок, недеюсь? :)
Записывайся на Комбинаторику, там интересно.


2146. Иван
Иван
ответить
→  Neverwinter 2  # Комбинаторика / VIP. Простые числа. Оптимизация алгоритма / 2015-09-13 16:38

Да, этот урок интересный. Делегаты я понял точно не с первого раза. Хорошо все получилось! Главное - не останавливаться.


24. Оля
Оля
ответить
→  Neverwinter 2  # Комбинаторика / VIP. Простые числа. Оптимизация алгоритма / 2015-09-13 16:10

Кирилл, замечательно что отлично попрактиковался и нашел очень много полезного и интересного! Молодец! :)
Отлично воспользовался подарком! Поздравляю!!!



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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Практиковался с алгоритмами поиска простых чисел, реализовал "решето Эратосфена", повторил работу с модульными тестами.
Трудности: Сложностей не было, в основном мелкие ошибки типов данных и границ поиска.
Проверку функций реализовал с помощью модульных тестов библиотеки boost. Опробовал создание функций isPrime* через некое подобие TDD. Поначалу было трудно привыкнуть, но в итоге понравилось, больше уверенности в работоспособности своего кода. Выполнил проверку скорости работы функций, как было предложено в уроке, за определенное время: странно, функция isPrimeSqrtP оказалась медленнее, чем ожидалось. Реализовал алгоритм "решето Эратосфена", для ее проверки выбрал другой способ: задаю максимальное число и засекаю время выполнения функций. Результат удивил, алгоритм Эратосфена и isPrimeSqrtP проиграли по времени isPrimeSqrt3. При бОльших границах интервала поиска отставание уменьшается, я полагаю проблема в реализации алгоритма. Урок понравился, поработал с консолью, тестами, оптимизацией, реализацией алгоритма. Спасибо!:)
Научился: находить простые числа в огромных количествах
Трудности: Хороший пример использования делегатов.
Спасибо за интересный видео-урок. В решете Эратосфена проблема посчитать время, т.к. ему надо задать число элементов. Так и не придумал, как это правильно сделать. Просто подбирал числа, время вычислений которых, состовляло 1000 ms