Dada una cadena, que consiste en un prefijo y luego "ilión", convierte este número en forma estándar.
Por ejemplo:
"million" -> 10^6
"trillion" -> 10^12
"quattuordecillion" -> 10^45
El programa debe ser capaz de manejar la entrada que va hasta Centillion, que es 10 ^ 303. Aquí se puede encontrar una lista de nombres y sus valores de forma estándar ; tenga en cuenta que esto proporciona valores por cada incremento de 10 ^ 3 hasta 10 ^ 63, pero luego los proporciona en incrementos de 10 ^ 30, sin embargo, el patrón es bastante sencillo.
El programa debe manejar los 100 casos (incluso los que no se proporcionan explícitamente en el sitio web proporcionado). Aquí hay algunos ejemplos de esto:
"sexvigintillion" -> 10^81
"unnonagintillion" -> 10^276
"octotrigintillion" -> 10^117
La entrada se puede proporcionar a través de STDIN, argumento de función o codificado como una cadena.
Este es el código de golf, ¡el código más corto gana!
fuente

Respuestas:
Python 2 (
384368365348347 bytes)(La
iflínea está sangrada con una sola pestaña y el resto con espacios individuales).Aquí
c('million') == 10**6tiene que haber un caso especial porque'novem'también termina en'm'.Ejemplos:
Gracias a Falko por ofuscarlo hasta 350 bytes.
Para practicar intenté reescribir esto como una línea usando lambdas. Son
404398390384380379 bytes:fuente
return'10^'+str(3*k)solo serían 4 bytes más.ayben la función como argumentos de palabra clave.1000**kes más corto que10**(3*k). Incrementarken3*d[p]también es igualmente corto.if'm'==s:k=6;d=[]lugar de una segundareturndeclaración larga .JS (ES6),
292270Entiende solo los números escritos en la lista dada. El OP no está claro sobre los demás.
Ejemplo:
fuente
split(0)conmatch(/[A-Z][a-z]*/g)el uso de expresiones regulares para que coincida con cada cadena.=>.C, 235
Maneja los 100 casos. El programa usa stdin y stdout.
¿Quién necesita expresiones regulares para la división de casos de camellos?
Ejemplo
fuente
*U<95 ?) y todas las nuevas líneas?Clojure,
381377 bytesEjemplo:
(c "Septuagintillion") ;; 1.0E213fuente
Haskell, 204 bytes (+9 para cadena formateada)
En GHCi:
Reemplazar
10^(con"10^"++(show.agrega otros 9 bytes:En GHCi:
Editar: tuve que corregir
"quinquagintillion"cuál contiene"qua".fuente