Skip to content

Instantly share code, notes, and snippets.

@nnasaki
Created December 3, 2012 16:12
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nnasaki/4195992 to your computer and use it in GitHub Desktop.
Save nnasaki/4195992 to your computer and use it in GitHub Desktop.
FizzBuzz 実装クラス
using System.Globalization;
namespace FizzBuzz
{
public class FizzBuzz
{
private readonly int _inputNumber;
/// <summary>
/// コンストラクタ
/// </summary>
public FizzBuzz(int inputNumber)
{
_inputNumber = inputNumber;
}
public bool Is三の倍数()
{
if (!IsMod(3))
return false;
return true;
}
public bool Is五の倍数()
{
if (!IsMod(5))
return false;
return true;
}
public string Say()
{
if (Is三の倍数() && Is五の倍数())
return "FizzBuzz";
if (Is三の倍数())
return "Fizz";
if (Is五の倍数())
return "Buzz";
return _inputNumber.ToString(CultureInfo.InvariantCulture);
}
/// <summary>
/// 引数の数字で割り切れればtrueを返す。
/// 0 は無効として、falseで返す
/// </summary>
/// <param name="divisionNumber"></param>
/// <returns>true:割り切れる false:割り切れない</returns>
private bool IsMod(int divisionNumber)
{
if (_inputNumber == 0)
return false;
if (_inputNumber % divisionNumber != 0)
return false;
return true;
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment