Си шарп с нуля

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




Константин
  • Звание: Рандомайзер
  • Накопленный опыт: нет
  • Не состоит в «Клубе формулистов»
  • Последний визит: 2016-05-15 11:17:35

Видеокурсы

Этот формулист не закончил ни одного видеокурса

Консольные задачи

Этот формулист не решил ни одной консольной задачи
Сохранить страницу:

85. Константин
Константин
ответить
→  Новопашин Владимир  # Entity Framework / Подключение БД по методу CodeFirst / 2016-05-15 11:17

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


85. Константин
Константин
ответить
→  Новопашин Владимир  # Вебинары C# / Отзыв о вебинаре по Функциональному программированию / 2016-05-07 20:57

Владимир спрашивал генератор чисел Фибоначчи
Вот пример кода с использованием мемоизации
public static class Memoizers
    {
        // Расширяющий метод.(Для произведения нового делегата.)
        public static Func<T, R> Memoize<T, R>(this Func<T, R> func)
        {
            var cache = new Dictionary<T, R>(); // для блока истинности тернарного оператора чтоб не вычислять заново фибоначи для 0 и 1

            return x =>
            {
                R result = default(R);
                if (cache.TryGetValue(x, out result))
                    return result;

                result = func(x);
                cache[x] = result;
                return result;
            };
        }
    }

    class Program
    {
        static void Main()
        {
            Func<UInt32, long> fib = null;
            fib = (x) => x > 1 ? fib(x - 1) + fib(x - 2) : x;

            fib = fib.Memoize(); // Закомментировать и выполнить! (Ощутимая задержка в расчетах)

            for (UInt32 i = 0; i < 1000; ++i)
                Console.WriteLine("{0:D2}-е число: {1}", i + 1, fib(i));

            // Задержка
            Console.ReadKey();
        }
    }

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.