[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Сумма прописью
freed-master
Нашел скрипт, выводящий сумму прописью:
Свернутый текст
PHP
<?php
$_1_2
[1]="одна "
$_1_2[2]="две "

$_1_19[1]="одна "
$_1_19[2]="две "
$_1_19[3]="три "
$_1_19[4]="четыре "
$_1_19[5]="пять "
$_1_19[6]="шесть "
$_1_19[7]="семь "
$_1_19[8]="восемь "
$_1_19[9]="девять "
$_1_19[10]="десять "

$_1_19[11]="одиннацать "
$_1_19[12]="двенадцать "
$_1_19[13]="тринадцать "
$_1_19[14]="четырнадцать "
$_1_19[15]="пятнадцать "
$_1_19[16]="шестнадцать "
$_1_19[17]="семнадцать "
$_1_19[18]="восемнадцать "
$_1_19[19]="девятнадцать "

$des[2]="двадцать "
$des[3]="тридцать "
$des[4]="сорок "
$des[5]="пятьдесят "
$des[6]="шестьдесят "
$des[7]="семьдесят "
$des[8]="восемдесят "
$des[9]="девяносто "

$hang[1]="сто "
$hang[2]="двести "
$hang[3]="триста "
$hang[4]="четыреста "
$hang[5]="пятьсот "
$hang[6]="шестьсот "
$hang[7]="семьсот "
$hang[8]="восемьсот "
$hang[9]="девятьсот "

$namerub[1]="гривна "
$namerub[2]="гривни "
$namerub[3]="гривен "

$nametho[1]="тысяча "
$nametho[2]="тысячи "
$nametho[3]="тысяч "

$namemil[1]="миллион "
$namemil[2]="миллиона "
$namemil[3]="миллионов "

$namemrd[1]="миллиард "
$namemrd[2]="миллиарда "
$namemrd[3]="миллиардов "

$kopeek[1]="коп. "
$kopeek[2]="коп. "
$kopeek[3]="коп. "

function 
semantic($i,&$words,&$fem,$f){ 
global 
$_1_2$_1_19$des$hang$namerub$nametho$namemil$namemrd
$words=""
$fl=0
if(
$i >= 100){ 
$jkl intval($i 100); 
$words.=$hang[$jkl]; 
$i%=100

if(
$i >= 20){ 
$jkl intval($i 10); 
$words.=$des[$jkl]; 
$i%=10
$fl=1

switch(
$i){ 
case 
1$fem=1; break; 
case 
2
case 
3
case 
4$fem=2; break; 
default: 
$fem=3; break; 

if( 
$i ){ 
if( 
$i && $f ){ 
if ( 
$f >= ) { 
$words.=$_1_19[$i]; 

else { 
$words.=$_1_2[$i]; 


else { 
$words.=$_1_19[$i]; 



function 
num2str($L){ 
global 
$_1_2$_1_19$des$hang$namerub$nametho$namemil$namemrd$kopeek

$s=" "
$s1=" "
$s2=" "
$kop=intval( ( $L*100 intval$L )*100 )); 
$L=intval($L); 
if(
$L>=1000000000){ 
$many=0
semantic(intval($L 1000000000),$s1,$many,3); 
$s.=$s1.$namemrd[$many]; 
$L%=1000000000


if(
$L >= 1000000){ 
$many=0
semantic(intval($L 1000000),$s1,$many,2); 
$s.=$s1.$namemil[$many]; 
$L%=1000000
if(
$L==0){ 
$s.="гривен "



if(
$L >= 1000){ 
$many=0
semantic(intval($L 1000),$s1,$many,1); 
$s.=$s1.$nametho[$many]; 
$L%=1000
if(
$L==0){ 
$s.="гривен "



if(
$L != 0){ 
$many=0
semantic($L,$s1,$many,0); 
$s.=$s1.$namerub[$many]; 


if(
$kop 0){ 
$many=0
semantic($kop,$s1,$many,1); 
$s.=$s1.$kopeek[$many]; 

else { 
$s.=" 00 копеек"

return 
$s

echo 
num2str($c);

Но он пишет и копейки прописью а мен нужно копейки числом.
К сожалению моих знаний не достаточно... Подскажите хотябы место в коде, где нужно что то это исправить...



Спустя 3 часа, 7 минут, 22 секунды (6.06.2009 - 16:57) glock18 написал(а):
Тебе помочь найти в коде слово "Копеек"? Или сам сообразишь как пользоваться поиском по файлу?

Спустя 2 часа, 29 минут, 59 секунд (6.06.2009 - 19:27) freed-master написал(а):
При чем тут слово копеек?

Сумма - 14.57

Сейчас скрипт пишет так: четырнадцать гривен пятьдесят семь копеек

А мне нужно: четырнадцать гривен 57 копеек

Что нужно убрать или изменить в коде что бы он не выводил копейки (число, а не слово!!!) прописью?

Спустя 43 минуты, 32 секунды (6.06.2009 - 20:10) twin написал(а):
Вот это:
PHP
if($kop 0){ 
$many=0
semantic($kop,$s1,$many,1); 
$s.=$s1.$kopeek[$many]; 
}
замени на это:
PHP
if($kop 0){  
$s.=$kop.' '.$kopeek[$many]; 
}

Спустя 1 час, 45 минут, 16 секунд (6.06.2009 - 21:56) glock18 написал(а):
freed-master
Цитата
При чем тут слово копеек?


При том:
PHP
if($kop 0){ 
$many=0
semantic($kop,$s1,$many,1); 
$s.=$s1.$kopeek[$many]; 

else { 
$s.=" 00 копеек"
}


Вообще, первое правило "с чего начинаешь анализировать код, результат которого видишь". Видишь "Копейки", хочешь поправить "Копейки", значит надо искать их в коде.

twin уже привел тебе решение, и если ты посмотришь повнимательнее - это 5ью строчками выше слова "копеек".


_____________
Всем, кто заинтересован, могу помочь начать зарабатывать на forex.
Пишите в личку или на e-mail: flash-dirt@yandex.ru
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.