LoginSignup
0
0

More than 3 years have passed since last update.

fizzbuzz

Last updated at Posted at 2019-08-09

C#の研修を見学中にifとfor使わずに書こうって言われた
しかしながら自分の端末にcsc入れてなかったのでF#で書いた

let printNumber(count) =
        let isDivided3 = (count % 3 = 0)
        let isDivided5 = (count % 5 = 0)

        match (isDivided3, isDivided5) with
        | (true, true) -> printfn "fizzbuzz"
        | (true, false) -> printfn "fizz"
        | (false, true) -> printfn "buzz"
        | (false, false) -> printfn "%d" count

let rec fizzbuzz(count) = 
    printNumber(count)

    match count with
    | 100 -> ()
    | _  -> fizzbuzz(count + 1)

[<EntryPoint>]
let main argv = 
    fizzbuzz(1)
    Console.ReadLine() |> ignore
    0

let printNumber(count) =
        match (count % 3 = 0, count % 5 = 0) with
        | (true, true) -> printfn "fizzbuzz"
        | (true, false) -> printfn "fizz"
        | (false, true) -> printfn "buzz"
        | (false, false) -> printfn "%d" count

[<EntryPoint>]
let main argv = 
    seq {0 ..100} |> Seq.iter(printNumber)
    0

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0