<?php
$Названия_до_20 = [
['один', 'одна'], ['два', 'две'], 'три', 'четыре', 'пять', 'шесть', 'семь', 'восемь', 'девять',
'десять', 'одиннадцать', 'двенадцать', 'тринадцать', 'четырнадцать', 'пятнадцать', 'шестнадцать', 'семнадцать', 'восемнадцать', 'девятнадцать'
];
$Названия_десятков = ['двадцать', 'тридцать', 'сорок', 'пятьдесят', 'шестьдесят', 'семьдесят', 'восемьдесят', 'девяносто'];
$Названия_сотен = ['сто', 'двести', 'триста', 'четыреста', 'пятьсот', 'шестьсот', 'семьсот', 'восемьсот', 'девятьсот'];
$Названия_степеней_тысячи = [['тысяча', 'тысячи', 'тысяч', 1], ['миллион', 'миллиона', 'миллионов', 0], ['миллиард', 'миллиарда', 'миллиардов', 0]];
function Разобрать_три_разряда($число, $род = 0) {
global $Названия_до_20, $Названия_десятков, $Названия_сотен;
while ($число > 0) {
$разряды[] = $число % 10; $число = intval($число / 10); }
while (count($разряды) < 3) $разряды[] = 0; $дес_ед = $разряды[1] * 10 + $разряды[0];
if ($разряды[2] > 0)
$результат[] = $Названия_сотен[$разряды[2] - 1];
if ($дес_ед > 0) {
if ($дес_ед < 20)
$результат[] = ($дес_ед > 2 ?
$Названия_до_20[$дес_ед - 1] :
$Названия_до_20[$дес_ед - 1][$род]
);
else {
$результат[] = $Названия_десятков[$разряды[1] - 2];
$результат[] = ($разряды[0] > 2 ?
$Названия_до_20[$разряды[0] - 1] :
$Названия_до_20[$разряды[0] - 1][$род]
);
}
}
}
function Склонение_после_числительного($ч, $с) {
return
($ч % 100 >= 5 && $ч % 100 <= 20) ?
$с[2] :
(($ч % 10 == 1) ?
$с[0] :
(($ч % 10 >= 2 && $ч % 10 <= 4) ?
$с[1] :
$с[2]
)
);
}
function Число_текстом($число) {
global $Названия_степеней_тысячи;
$сч_степ = 0;
while ($число > 0) {
$три_разряда = $число % 1000;
$результат[] = ($сч_степ > 0 ?
Разобрать_три_разряда($три_разряда, $Названия_степеней_тысячи[$сч_степ - 1][3]) . ' ' .
Склонение_после_числительного($три_разряда, $Названия_степеней_тысячи[$сч_степ - 1]) :
Разобрать_три_разряда($три_разряда)
);
$число = intval($число / 1000); $сч_степ++;
}
}
echo
'На вашем счёте ' . Число_текстом($сл_ч) . ' (' . $сл_ч . ') ' .
Склонение_после_числительного($сл_ч, ['рубль', 'рубля', 'рублей']) . '.';
?>
PD9waHAKCSTQndCw0LfQstCw0L3QuNGPX9C00L5fMjAgPSBbCgkJWyfQvtC00LjQvScsICfQvtC00L3QsCddLCBbJ9C00LLQsCcsICfQtNCy0LUnXSwgJ9GC0YDQuCcsICfRh9C10YLRi9GA0LUnLCAn0L/Rj9GC0YwnLCAn0YjQtdGB0YLRjCcsICfRgdC10LzRjCcsICfQstC+0YHQtdC80YwnLCAn0LTQtdCy0Y/RgtGMJywKCQkn0LTQtdGB0Y/RgtGMJywgJ9C+0LTQuNC90L3QsNC00YbQsNGC0YwnLCAn0LTQstC10L3QsNC00YbQsNGC0YwnLCAn0YLRgNC40L3QsNC00YbQsNGC0YwnLCAn0YfQtdGC0YvRgNC90LDQtNGG0LDRgtGMJywgJ9C/0Y/RgtC90LDQtNGG0LDRgtGMJywgJ9GI0LXRgdGC0L3QsNC00YbQsNGC0YwnLCAn0YHQtdC80L3QsNC00YbQsNGC0YwnLCAn0LLQvtGB0LXQvNC90LDQtNGG0LDRgtGMJywgJ9C00LXQstGP0YLQvdCw0LTRhtCw0YLRjCcKCV07CgkKCSTQndCw0LfQstCw0L3QuNGPX9C00LXRgdGP0YLQutC+0LIgPSBbJ9C00LLQsNC00YbQsNGC0YwnLCAn0YLRgNC40LTRhtCw0YLRjCcsICfRgdC+0YDQvtC6JywgJ9C/0Y/RgtGM0LTQtdGB0Y/RgicsICfRiNC10YHRgtGM0LTQtdGB0Y/RgicsICfRgdC10LzRjNC00LXRgdGP0YInLCAn0LLQvtGB0LXQvNGM0LTQtdGB0Y/RgicsICfQtNC10LLRj9C90L7RgdGC0L4nXTsKCgkk0J3QsNC30LLQsNC90LjRj1/RgdC+0YLQtdC9ID0gWyfRgdGC0L4nLCAn0LTQstC10YHRgtC4JywgJ9GC0YDQuNGB0YLQsCcsICfRh9C10YLRi9GA0LXRgdGC0LAnLCAn0L/Rj9GC0YzRgdC+0YInLCAn0YjQtdGB0YLRjNGB0L7RgicsICfRgdC10LzRjNGB0L7RgicsICfQstC+0YHQtdC80YzRgdC+0YInLCAn0LTQtdCy0Y/RgtGM0YHQvtGCJ107CgoJJNCd0LDQt9Cy0LDQvdC40Y9f0YHRgtC10L/QtdC90LXQuV/RgtGL0YHRj9GH0LggPSBbWyfRgtGL0YHRj9GH0LAnLCAn0YLRi9GB0Y/Rh9C4JywgJ9GC0YvRgdGP0YcnLCAxXSwgWyfQvNC40LvQu9C40L7QvScsICfQvNC40LvQu9C40L7QvdCwJywgJ9C80LjQu9C70LjQvtC90L7QsicsIDBdLCBbJ9C80LjQu9C70LjQsNGA0LQnLCAn0LzQuNC70LvQuNCw0YDQtNCwJywgJ9C80LjQu9C70LjQsNGA0LTQvtCyJywgMF1dOwoKCWZ1bmN0aW9uINCg0LDQt9C+0LHRgNCw0YLRjF/RgtGA0Lhf0YDQsNC30YDRj9C00LAoJNGH0LjRgdC70L4sICTRgNC+0LQgPSAwKSB7CgkJZ2xvYmFsICTQndCw0LfQstCw0L3QuNGPX9C00L5fMjAsICTQndCw0LfQstCw0L3QuNGPX9C00LXRgdGP0YLQutC+0LIsICTQndCw0LfQstCw0L3QuNGPX9GB0L7RgtC10L07CgkJd2hpbGUgKCTRh9C40YHQu9C+ID4gMCkgewoJCQkk0YDQsNC30YDRj9C00YtbXSA9ICTRh9C40YHQu9C+ICUgMTA7ICTRh9C40YHQu9C+ID0gaW50dmFsKCTRh9C40YHQu9C+IC8gMTApOwoJCX0KCQl3aGlsZSAoY291bnQoJNGA0LDQt9GA0Y/QtNGLKSA8IDMpICTRgNCw0LfRgNGP0LTRi1tdID0gMDsKCQkk0LTQtdGBX9C10LQgPSAk0YDQsNC30YDRj9C00YtbMV0gKiAxMCArICTRgNCw0LfRgNGP0LTRi1swXTsKCQlpZiAoJNGA0LDQt9GA0Y/QtNGLWzJdID4gMCkKCQkJJNGA0LXQt9GD0LvRjNGC0LDRgltdID0gJNCd0LDQt9Cy0LDQvdC40Y9f0YHQvtGC0LXQvVsk0YDQsNC30YDRj9C00YtbMl0gLSAxXTsKCQlpZiAoJNC00LXRgV/QtdC0ID4gMCkgewoJCQlpZiAoJNC00LXRgV/QtdC0IDwgMjApCgkJCQkk0YDQtdC30YPQu9GM0YLQsNGCW10gPSAoJNC00LXRgV/QtdC0ID4gMiA/CgkJCQkJJNCd0LDQt9Cy0LDQvdC40Y9f0LTQvl8yMFsk0LTQtdGBX9C10LQgLSAxXSA6CgkJCQkJJNCd0LDQt9Cy0LDQvdC40Y9f0LTQvl8yMFsk0LTQtdGBX9C10LQgLSAxXVsk0YDQvtC0XQoJCQkJKTsKCQkJZWxzZSB7CgkJCQkk0YDQtdC30YPQu9GM0YLQsNGCW10gPSAk0J3QsNC30LLQsNC90LjRj1/QtNC10YHRj9GC0LrQvtCyWyTRgNCw0LfRgNGP0LTRi1sxXSAtIDJdOwoJCQkJJNGA0LXQt9GD0LvRjNGC0LDRgltdID0gKCTRgNCw0LfRgNGP0LTRi1swXSA+IDIgPwoJCQkJCSTQndCw0LfQstCw0L3QuNGPX9C00L5fMjBbJNGA0LDQt9GA0Y/QtNGLWzBdIC0gMV0gOgoJCQkJCSTQndCw0LfQstCw0L3QuNGPX9C00L5fMjBbJNGA0LDQt9GA0Y/QtNGLWzBdIC0gMV1bJNGA0L7QtF0KCQkJCSk7CgkJCX0KCQl9CgkJcmV0dXJuIGltcGxvZGUoJyAnLCAk0YDQtdC30YPQu9GM0YLQsNGCKTsKCX0KCglmdW5jdGlvbiDQodC60LvQvtC90LXQvdC40LVf0L/QvtGB0LvQtV/Rh9C40YHQu9C40YLQtdC70YzQvdC+0LPQvigk0YcsICTRgSkgewoJCXJldHVybgoJCQkoJNGHICUgMTAwID49IDUgJiYgJNGHICUgMTAwIDw9IDIwKSA/CgkJCQkk0YFbMl0gOgoJCQkJKCgk0YcgJSAxMCA9PSAxKSA/CgkJCQkJJNGBWzBdIDoKCQkJCQkoKCTRhyAlIDEwID49IDIgJiYgJNGHICUgMTAgPD0gNCkgPwoJCQkJCQkk0YFbMV0gOgoJCQkJCQkk0YFbMl0KCQkJCQkpCgkJCQkpOwoJfQoKCWZ1bmN0aW9uINCn0LjRgdC70L5f0YLQtdC60YHRgtC+0LwoJNGH0LjRgdC70L4pIHsKCQlnbG9iYWwgJNCd0LDQt9Cy0LDQvdC40Y9f0YHRgtC10L/QtdC90LXQuV/RgtGL0YHRj9GH0Lg7CgkJJNGB0Ydf0YHRgtC10L8gPSAwOwoJCXdoaWxlICgk0YfQuNGB0LvQviA+IDApIHsKCQkJJNGC0YDQuF/RgNCw0LfRgNGP0LTQsCA9ICTRh9C40YHQu9C+ICUgMTAwMDsKCQkJJNGA0LXQt9GD0LvRjNGC0LDRgltdID0gKCTRgdGHX9GB0YLQtdC/ID4gMCA/CgkJCQnQoNCw0LfQvtCx0YDQsNGC0Yxf0YLRgNC4X9GA0LDQt9GA0Y/QtNCwKCTRgtGA0Lhf0YDQsNC30YDRj9C00LAsICTQndCw0LfQstCw0L3QuNGPX9GB0YLQtdC/0LXQvdC10Llf0YLRi9GB0Y/Rh9C4WyTRgdGHX9GB0YLQtdC/IC0gMV1bM10pIC4gJyAnIC4KCQkJCdCh0LrQu9C+0L3QtdC90LjQtV/Qv9C+0YHQu9C1X9GH0LjRgdC70LjRgtC10LvRjNC90L7Qs9C+KCTRgtGA0Lhf0YDQsNC30YDRj9C00LAsICTQndCw0LfQstCw0L3QuNGPX9GB0YLQtdC/0LXQvdC10Llf0YLRi9GB0Y/Rh9C4WyTRgdGHX9GB0YLQtdC/IC0gMV0pIDoKCQkJCdCg0LDQt9C+0LHRgNCw0YLRjF/RgtGA0Lhf0YDQsNC30YDRj9C00LAoJNGC0YDQuF/RgNCw0LfRgNGP0LTQsCkKCQkJKTsKCQkJJNGH0LjRgdC70L4gPSBpbnR2YWwoJNGH0LjRgdC70L4gLyAxMDAwKTsKCQkJJNGB0Ydf0YHRgtC10L8rKzsKCQl9CgkJcmV0dXJuIGltcGxvZGUoJyAnLCBhcnJheV9yZXZlcnNlKCTRgNC10LfRg9C70YzRgtCw0YIpKTsKCX0KCgkk0YHQu1/RhyA9IG10X3JhbmQoMSwgOTk5OTk5OTkpOwoJZWNobwoJCSfQndCwINCy0LDRiNC10Lwg0YHRh9GR0YLQtSAnIC4g0KfQuNGB0LvQvl/RgtC10LrRgdGC0L7QvCgk0YHQu1/RhykgLiAnICgnIC4gJNGB0Ltf0YcgLiAnKSAnIC4KCQnQodC60LvQvtC90LXQvdC40LVf0L/QvtGB0LvQtV/Rh9C40YHQu9C40YLQtdC70YzQvdC+0LPQvigk0YHQu1/RhywgWyfRgNGD0LHQu9GMJywgJ9GA0YPQsdC70Y8nLCAn0YDRg9Cx0LvQtdC5J10pIC4gJy4nOwo/Pg==