Треки
/
F#
F#
/
Вправи
/
Краплі дощу
Краплі дощу

Краплі дощу

Легка

Вступ

Краплі дощу - трохи складніша версія завдання FizzBuzz, класичного питання на співбесіді.

Вказівки

Наше завдання - перетворити число на відповідні звуки крапель дощу.

Якщо задане число:

  • ділиться на 3, додаємо «Pling» до результату;
  • ділиться на 5, додаємо «Plang» до результату;
  • ділиться на 7, додаємо «Plong» до результату;
  • не ділиться на 3, 5 або 7, тоді результатом має бути саме це число як рядок тексту (англ. string).

Приклади

  • 28 ділиться на 7, але не на 3 і не на 5, тож результатом буде "Plong".
  • 30 ділиться на 3 і 5, але не на 7, тож результатом буде "PlingPlang".
  • 34 не ділиться ні на 3, ні на 5, ні на 7, тож результатом буде "34".
Note

Поширений спосіб перевірити, чи одне число ділиться на інше без остачі, полягає в тому, щоб порівняти остачу або модуль з нулем. Більшість мов надають оператори або функції для одного (чи обох) з них.

Підказки

  • Погляньмо на це загальніше. Якщо ми вже знайомі із задачею (fizz buzz)[https://en.wikipedia.org/wiki/Fizz_buzz], то ця вправа схожа на неї, тільки тут три умови замість двох. Як би ми це реалізували, знаючи, що колись захочеться розширити до чотирьох, пʼяти чи навіть десяти різновидів крапель дощу?
Редагувати через GitHub Посилання відкривається в новому вікні або вкладці
F# Exercism

Час розпочати Краплі дощу?

Зареєструйтеся на Exercism, щоб вивчати й опановувати F#, а також 18 концепцій148 вправ та справжнє наставництво від людей, і все це безкоштовно.

Глибоке занурення у Краплі дощу!

Розгляньмо рішення з функціональними конвеєрами, множенням матриць, попередньо обчисленими табличними рішеннями з макросом, обʼєктно-орієнтованим підходом, вражаючим використанням і Python, і TCL, а також корпоративну версію.