340,282,366,920,938,463,463,374,607,431,768,211,458

Code:
alias ½ if ($1) return $3 $+ $gettok(OneTwoThreeFourFiveSixS7EightNineTenEl7TwelveThir+Four+Fif+Six+S7+Eigh+Nine+,$1,2) $2
alias numconv {
  var %x,%o,%s,%i $remove($1-,$chr(44),$chr(32))
  if (!$regex(%i,/^(?=\S*\d)(\d{0,66}|0*)(\.\d*)?($| )/)) return $iif(%i != %o,Invalid)
  %i = 0 $+ $regml(1)
  while %i {
    %x = $½($mid(%i,-3,1),Hundred) $iif($mid(%i,-2) < 20,$½($int($ifmatch)),$+($½($calc($mid(%i,-2,1) -10)),ty,$½($mid(%i,-1),,-)))
    %o = %x $iif(%x && %s,$gettok(ThousandM.B.Tr.Quadr.Quint.Sext.Sept.Oct.Non.!Un!Duo!Tre!Quattuor!Quin!Sex!Septen!Octo!Novem!Vigint.,%s,2)) %o
    %i = $left(%i,-3)
    inc %s
  }
  return $iif(%o,$replace(%o,7,even,+t,t,lvet,nt,urt,rt,!,dec.,.,illion,+,teen),Zero)
}


Code:
echo -a $numconv(340,282,366,920,938,463,463,374,607,431,768,211,458)


Three Hundred Forty Undecillion Two Hundred Eighty-Two decillion Three Hundred Sixty-Six Nonillion Nine Hundred Twenty Octillion Nine Hundred Thirty-Eight Septillion Four Hundred Sixty-Three Sextillion Four Hundred Sixty-Three Quintillion Three Hundred Seventy-Four Quadrillion Six Hundred Seven Trillion Four Hundred Thirty-One Billion Seven Hundred Sixty-Eight Million Two Hundred Eleven Thousand Four Hundred Fifty-Eight

:P

-genius_at_work