「Fizz Buzz」の版間の差分
ページの作成:「'''Fizz Buzz'''(フィズ・バズ、'''Bizz Buzz''' や '''Buzz''' とも呼ばれる)とは、英語圏で長距離ドライブ中や飲み会の時に行われ...」 |
編集の要約なし |
||
| (他の1人の利用者による、間の1版が非表示) | |||
| 33行目: | 33行目: | ||
} | } | ||
return 0; | return 0; | ||
} | |||
</source> | |||
=== C# === | |||
[[C Sharp|C#]]での実装例。 | |||
<source lang="csharp"> | |||
using System; | |||
using System.Collections.Generic; | |||
using System.Linq; | |||
namespace FizzBuzz | |||
{ | |||
class MainClass | |||
{ | |||
public static void Main(string[] args) | |||
{ | |||
Enumerable.Range(1, int.MaxValue).Select( | |||
n => | |||
(n % 15 == 0) ? "FizzBuzz" : | |||
(n % 3 == 0) ? "Fizz" : | |||
(n % 5 == 0) ? "Buzz" : | |||
n.ToString()) | |||
.ForEach(Console.WriteLine); | |||
} | |||
} | |||
static class IEnumerableExtensions | |||
{ | |||
public static void ForEach<TSource>(this IEnumerable<TSource> source, Action<TSource> action) | |||
{ | |||
foreach (var item in source) | |||
{ | |||
action(item); | |||
} | |||
} | |||
} | |||
} | } | ||
</source> | </source> | ||
| 44行目: | 80行目: | ||
|m 3 = "fizz" | |m 3 = "fizz" | ||
|True = show n where m x = mod n x == 0 in map f [1..100] | |True = show n where m x = mod n x == 0 in map f [1..100] | ||
</source> | |||
===F#=== | |||
[[F Sharp|F#]]による実装。 | |||
<source lang="fsharp"> | |||
[1..100] | |||
|> Seq.map (function | |||
| x when x%5=0 && x%3=0 -> "FizzBuzz" | |||
| x when x%3=0 -> "Fizz" | |||
| x when x%5=0 -> "Buzz" | |||
| x -> string x) | |||
|> Seq.iter (printfn "%s") | |||
</source> | </source> | ||