three hundred and forty undecillion, two hundred and eighty-two decillion, three hundred and sixty-six nonillion, nine hundred and twenty octillion, nine hundred and thirty-eight septillion, four hundred and sixty-three sextillion, four hundred and sixty-three quintillion, three hundred and seventy-four quadrillion, six hundred and seven trillion, four hundred and thirty-one billion, seven hundred and sixty-eight million, two hundred and eleven thousand, four hundred and fifty-six
Народ, чего же вы в самом делаете то? Какой 10^100. Эт 3.402823669e+38. Так что искать, как я понимаю, надо название 10^38. У мну дома справочник был. Пойду в гугле пошарю.
-- гугол, квинтьльон - слюнявя пальцы, шелестя купюрами и звеня монетами , задумчиво щурясь на потолок, Саныч распаковывал банки, которые каждую осень закатывал с самого детства.
Улыбаясь одной морщинкой в углу рта, он вспоминал, как в детстве шел в гору пять километров пешком - экономил на санях, чтоб выменять немецкий трофейный каталог нижнего женского белья на трофейные ботинки. Возвращался босой, окрыленный, но с горящим взглядом...
$ ./numbername `echo "2^128" | BC_LINE_LENGTH=128 bc -q`
триста сорок ундециллионов двести восемьдесят два дециллиона триста шестьдесят шесть нонтиллионов девятьсот двадцать октиллионов девятьсот тридцать восемь септиллионов четыреста шестьдесят три секстиллиона четыреста шестьдесят три квинтиллиона триста семьдесят четыре квадриллиона шестьсот семь триллионов четыреста тридцать один миллиардов семьсот шестьдесят восемь миллионов двести одна тысяч четыреста пятьдесят шесть
Можно по-английски:
Блин.. Там около 88 строки ошибка в функции plural()
- n="$1"
- echo $[$n>1:1:0]
+ n=$[10#$1]
+ echo $[$n>1?1:0]
$ LC_ALL=C ./numbername `echo "2^128" | BC_LINE_LENGTH=128 bc -q`
three hundreds forty undecillions two hundreds eighty two decillions three hundreds sixty six nonillions nine hundreds twenty octillions nine hundreds thirty eight septillions four hundreds sixty three sextillions four hundreds sixty three quintillions three hundreds seventy four quadrillions six hundreds seven trillions four hundreds thirty one billions seven hundreds sixty eight millions two hundreds one thousands four hundreds fifty six
Можно бОльшие числа брать:
$ ./numbername `echo "2^256" | BC_LINE_LENGTH=128 bc -q`
сто пять кваттуорвигинтиллионов семьсот девяносто два тревигинтиллиона восемьдесят девять довигинтиллионов двести тридцать семь унвигинтиллионов триста шесть вигинтиллионов сто девяносто пять новемдециллионов четыреста двадцать три октодециллиона пятьсот семьдесят септендециллионов девятьсот восемьдесят пять сексдециллионов восемь квиндециллионов шестьсот восемьдесят семь кваттуордециллионов девятьсот семь тредециллионов восемьсот пятьдесят три дуодециллиона двести шестьдесят девять ундециллионов девятьсот восемьдесят четыре дециллиона шестьсот шестьдесят пять нонтиллионов шестьсот сорок октиллионов пятьсот шестьдесят четыре септиллиона тридцать девять секстиллионов четыреста пятьдесят семь квинтиллионов пятьсот восемьдесят четыре квадриллиона семь триллионов девятьсот три миллиардов сто двадцать девять миллионов шестьсот тридцать девять тысяч девятьсот тридцать шесть
$ LC_ALL=C ./numbername `echo "2^256" | BC_LINE_LENGTH=128 bc -q`
hundred five quattuorvigintillions seven hundreds ninety two trevigintillions eighty nine duovigintillions two hundreds thirty seven unvigintillions three hundreds six vigintillions hundred ninety five novemdecillions four hundreds twenty three octodecillions five hundreds seventy septendecillions nine hundreds eighty five sexdecillions eight quindecillions six hundreds eighty seven quattuordecillions nine hundreds seven tredecillions eight hundreds fifty three duodecillions two hundreds sixty nine undecillions nine hundreds eighty four decillions six hundreds sixty five nonillions six hundreds forty octillions five hundreds sixty four septillions thirty nine sextillions four hundreds fifty seven quintillions five hundreds eighty four quadrillions seven trillions nine hundreds three billions hundred twenty nine millions six hundreds thirty nine thousands nine hundreds thirty six
Но преимущество у моего скрипта есть:
Lisp уже для 2^220, говорит мол число слишком велико для формата "~r".
А numbername даже 2^1056 выводит без проблем :-)