Reading numbers from console until input isn't a number
Your code does not read numbers from the "console until input isn't a number", but reads 100 inputs strings from the console and returns those that can be converted to integers.

If you want to read numbers from the console "until input isn't a number", you could do something like this:

let numbers1 max = seq {for x in 1..max do yield Int32.TryParse(Console.ReadLine()) }
                  |&gt; Seq.takeWhile (fun (b, x) -&gt; b) 
                  |&gt; Seq.map (fun (b, x) -&gt; x)


or 

let numbers2 max = seq {for x in 1..max do yield Int32.TryParse(Console.ReadLine()) }
                    |&gt; Seq.takeWhile (fun (b, x) -&gt; b) 
                    |&gt; Seq.map (fun (b, x) -&gt; x)
                    |&gt; Seq.toList


if you want to defer the return of each input to after the last valid input has been entered.