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

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

Комбинаторика / Комбинаторика. Математические операции

  • Продолжаем комбинаторную практику.
    Дан ряд цифр и одно число, например:
    1 2 3 4 5 6 7 8 и 100.
    Расставить между цифрами знаки
    "пробел", "умножить", "плюс" и "минус"
    таким образом, чтобы получилось заданное число.
  • Дата отправки отчёта: 5 августа 2015 г.
  • Задание выполнено: за 5 час. 00 мин.
  • Чему научился: Узнал рекурсивный и переборный алгоритмы поиска подходящих расстановок знаков в арифметических выражениях, для получения необходимого результата. Научился реализовывать простой калькулятор для арифметических выражений с учетом приоритета операций ("+", "-", "*", "[сцепление цифр]".
  • Что было сложным: не было сложного
  • Комментарии: нет
  • Оценка видео-уроку:
Отчёт от 5029 за Комбинаторика / Комбинаторика. Математические операции


Отчёт от 5029 за Комбинаторика / Комбинаторика. Математические операции




Оцени работу

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

24. Олюшка
Олюшка
ответить
→  Андрей Поляков  # Комбинаторика / Комбинаторика. Математические операции / 2015-08-05 17:10

Андрей, шикарная работа, Какой ты все же Молодец! :)



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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Решать задачу Цифры и знаки рекуррентным методом
Трудности: Решать задачу Цифры и знаки рекуррентным методом
Все Ок
Научился: Повторил работу с рекурсией, неплохо закрепил полученные навыки во время создания класса калькулятора.
Трудности: Реализовать свой класс калькулятора.
Калькулятор реализовал с использованием грамматики(на втором скриншоте слева): Expression отвечает за вычисление суммы/разности, Term - произведение, Number - составление числа из цифр, разделенных пробелами. Все операции левоассоциативны, приоритеты реализованы с помощью рекурсивных вызовов функций Term, Number.