Начало хорошее
Теперь осталось дело за малым - учесть 2 условия:
1. числу может предшествовать только пробел
2. после числа тоже должен быть пробел (или конец строки), иначе это не число
Поэтому, выделяя число, нужно знать, стоял ли перед ним не-пробел - если стоял, то мы можем смело пропускать до следующего пробела, т.к. это уже не число. И, соответственно, наткнувшись на первый символ, не являющийся цифрой (у тебя - на выходе из второго цикла while), нужно убедиться, что это пробел или конец строки - иначе накопленный результат можно выбрасывать, т.к. это слово, а не число.