PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (6): « 1 2 3 4 5 [6]
Найдено сообщений: 84
7erj
Отправлено: 28 Января, 2015 - 16:34:02 • Тема: Преобразовать число в текст • Форум: Вопросы новичков
Ответов: 7 Просмотров: 377
GoDr пишет: http://habrahabr.ru/post/53210/
Не работает у меня почему-то
Вот исходник :
PHP:
скопировать код в буфер обмена
<?
/**
* Возвращает сумму прописью
* @author runcore
* @uses morph(...)
*/
function num2str( $num ) {
$nul = 'ноль' ;
array ( '' , 'один' , 'два' , 'три' , 'четыре' , 'пять' , 'шесть' , 'семь' , 'восемь' , 'девять' ) , array ( '' , 'одна' , 'две' , 'три' , 'четыре' , 'пять' , 'шесть' , 'семь' , 'восемь' , 'девять' ) , ) ;
$a20 = array ( 'десять' , 'одиннадцать' , 'двенадцать' , 'тринадцать' , 'четырнадцать' , 'пятнадцать' , 'шестнадцать' , 'семнадцать' , 'восемнадцать' , 'девятнадцать' ) ; $tens = array ( 2 => 'двадцать' , 'тридцать' , 'сорок' , 'пятьдесят' , 'шестьдесят' , 'семьдесят' , 'восемьдесят' , 'девяносто' ) ; $hundred = array ( '' , 'сто' , 'двести' , 'триста' , 'четыреста' , 'пятьсот' , 'шестьсот' , 'семьсот' , 'восемьсот' , 'девятьсот' ) ; array ( 'копейка' , 'копейки' , 'копеек' , 1
) , array ( 'рубль' , 'рубля' , 'рублей' , 0
) , array ( 'тысяча' , 'тысячи' , 'тысяч' , 1
) , array ( 'миллион' , 'миллиона' , 'миллионов' , 0
) , array ( 'миллиард' , 'милиарда' , 'миллиардов' , 0
) , ) ;
//
foreach ( str_split ( $rub , 3
) as $uk => $v ) { // by 3 symbols $uk = sizeof ( $unit ) - $uk - 1 ; // unit key $gender = $unit [ $uk ] [ 3] ;
// mega-logic
$out [ ] = $hundred [ $i1 ] ; # 1xx-9xx
if ( $i2 > 1) $out [ ] = $tens [ $i2 ] . ' ' . $ten [ $gender ] [ $i3 ] ; # 20-99
else $out [ ] = $i2 > 0 ? $a20 [ $i3 ] : $ten [ $gender ] [ $i3 ] ; # 10-19 | 1-9
// units without rub & kop
if ( $uk > 1) $out [ ] = morph( $v , $unit [ $uk ] [ 0] , $unit [ $uk ] [ 1] , $unit [ $uk ] [ 2] ) ;
} //foreach
}
else $out [ ] = $nul ;
$out [ ] = morph
( intval ( $rub ) , $unit [ 1
] [ 0
] , $unit [ 1
] [ 1
] , $unit [ 1
] [ 2
] ) ; // rub $out [ ] = $kop . ' ' . morph( $kop , $unit [ 0] [ 0] , $unit [ 0] [ 1] , $unit [ 0] [ 2] ) ; // kop
}
/**
* Склоняем словоформу
* @ author runcore
*/
function morph( $n , $f1 , $f2 , $f5 ) {
if ( $n > 10 && $n < 20) return $f5 ;
$n = $n % 10 ;
if ( $n > 1 && $n < 5) return $f2 ;
if ( $n == 1) return $f1 ;
return $f5 ;
}
?>
<? include ( 'Z:\home\test1.ru\www\report_include\calculation\coefficients_fittnes_analagues.php' ) ; ?>
<p>Розрахунок коефіцієнтів корегування на технічний стан:</p>
<? include ( 'Z:\home\test1.ru\www\report_include\calculation\calculation_adjustment_technical_condition.php' ) ; ?>
<? include ( 'Z:\home\test1.ru\www\report_include\calculation\calculation_adjusted_value_comparison.php' ) ; ?>
ПДВ
<? echo min ( $onecorrectcostcom , $twocorrectcostcom , $threecorrectcostcom , $forcorrectcostcom , $fivecorrectcostcom ) ; ?> –
<? echo max ( $onecorrectcostcom , $twocorrectcostcom , $threecorrectcostcom , $forcorrectcostcom , $fivecorrectcostcom ) ; ?> дол. США за 1 м<sup>2</sup>.</p>
оцінка складає:</p>
<p>  
<? echo round ( ( $onecorrectcostcom + $twocorrectcostcom + $threecorrectcostcom + $forcorrectcostcom + $fivecorrectcostcom ) / 5
, 2
) ; ?> *
<? echo $oogrossarea ; ?> =
<? echo round ( ( ( $onecorrectcostcom + $twocorrectcostcom + $threecorrectcostcom + $forcorrectcostcom + $fivecorrectcostcom ) / 5
) * $oogrossarea , 2 ) ?> (
<? num2str
( 24578
) ; ?> ) або по курсу долара
<? echo $dollar ; ?> грн. / 1 дол. США:</p>
<p>  
<? echo round ( ( ( $onecorrectcostcom + $twocorrectcostcom + $threecorrectcostcom + $forcorrectcostcom + $fivecorrectcostcom ) / 5
) * $oogrossarea , 2 ) ?> *
<? echo $dollar ; ?> =
<? echo round ( ( ( $onecorrectcostcom + $twocorrectcostcom + $threecorrectcostcom + $forcorrectcostcom + $fivecorrectcostcom ) / 5
) * $oogrossarea * $dollar , 2 ) ?> гривні (сума прописом).</p>
7erj
Отправлено: 28 Января, 2015 - 03:44:20 • Тема: Преобразовать число в текст • Форум: Вопросы новичков
Ответов: 7 Просмотров: 377
Доброй ночи!
Подскажите варианты согласно которым можно преобразовать написанное число в текстовое выражение.
Пример :
Искал много способов но их мало, а те что есть не работают или руки у меня кривые (что скрывать)
Спасибо заранее
7erj
Отправлено: 28 Января, 2015 - 00:49:53 • Тема: Среднее число • Форум: Вопросы новичков
Ответов: 8 Просмотров: 348
armancho7777777 пишет: del
Не заметил дополнение к задаче...
Простите..?
(Добавление)
Закрывайте тему. Чтоб флуд не пошел. Во всем разобрались. Спасибо.
7erj
Отправлено: 27 Января, 2015 - 23:33:57 • Тема: Среднее число • Форум: Вопросы новичков
Ответов: 8 Просмотров: 348
Боже, человек. Я тебе цветы вышлю
Аллилуйя. Спасибо большое!
7erj
Отправлено: 27 Января, 2015 - 22:53:41 • Тема: Среднее число • Форум: Вопросы новичков
Ответов: 8 Просмотров: 348
SAD пишет: Что значит среднее??
Если у вас 1, 2, 3, 4, 5, 6
Какое тут среднее будет?
Имеются 3 варианта, из них нужно выбрать среднее число. Я пример выше написал: 100, 200 и 300
Нужно что бы программа выбрала 200
7erj
Отправлено: 27 Января, 2015 - 21:45:39 • Тема: Среднее число • Форум: Вопросы новичков
Ответов: 8 Просмотров: 348
Мелкий пишет: Среднее арифметическое? array_sum / count
Вы имеете в виду сумму поделить на 2? Мне не такое надо
А именно что бы из готового перечня результатом программа выбрала то которое уже является средним. Как я описал все в примере
7erj
Отправлено: 27 Января, 2015 - 21:19:44 • Тема: Среднее число • Форум: Вопросы новичков
Ответов: 8 Просмотров: 348
У меня есть 3 значения: 100, 200 и 300
Для того что-бы из данного списка вывести максимальное значение я использовал выражение max() - Получил соответственно 300
Для минимального min() - Получил соответственно 100
Как мне получить среднее число из перечисленных? В данном случае 200???
Подскажите пожалуйста. Заранее благодарен
7erj
Отправлено: 24 Января, 2015 - 20:31:58 • Тема: Математическая операция и switch • Форум: Вопросы новичков
Ответов: 1 Просмотров: 107
Проблему решил следующим образом:
PHP:
скопировать код в буфер обмена
switch ( $onekstan ) {
case '1great' :
echo '1;' ;
$oneres = 1 ;
break ;
case '1good' :
echo '0,9;' ;
$oneres = 0.9 ;
break ;
case '1satisfactory' :
echo '0,7;' ;
$oneres = 0.7 ;
break ;
case '1unsatisfactory' :
echo '0,5;' ;
$oneres = 0.5 ;
break ;
case '1decrepit' :
echo '0,3;' ;
$oneres = 0.3 ;
break ;
case '1notapplicable' :
echo '0,1;' ;
$oneres = 0.1 ;
break ;
default :
echo 'Ви не обрали технічний стан' ;
}
// С $ookstan тоже самое сделал
echo $oores / $oneres ;
Благодарю. Тема закрыта.
7erj
Отправлено: 24 Января, 2015 - 18:15:00 • Тема: Математическая операция и switch • Форум: Вопросы новичков
Ответов: 1 Просмотров: 107
Добрый день! Есть одна проблема. У меня есть 2 switch операции, они выводят из <select> нужный мне параметр. Вот только php я толком не знаю и вопрос заключается в следующем:
2 switch выводят по параметру. Как мне их поделить? Переменную switch'у приделать я не могу, и тупо поделить switch на switch не могу? Как быть?
Заранее благодарен!
Слеш посреди свичей это моя попытка поделить. Просьба: Сильно не смейтесь
Исходник: PHP:
скопировать код в буфер обмена
switch ( $ookstan ) {
case 'oogreat' :
echo '0' ;
break ;
case 'oogood' :
echo '0,9' ;
break ;
case 'oosatisfactory' :
echo '0,7' ;
break ;
case 'oounsatisfactory' :
echo '0,5' ;
break ;
case 'oodecrepit' :
echo '0,3' ;
break ;
case 'oonotapplicable' :
echo '0,1' ;
break ;
default :
echo 'Ви не обрали технічний стан' ;
}
/
switch ( $onekstan ) {
case '1great' :
echo '1;' ;
break ;
case '1good' :
echo '0,9;' ;
break ;
case '1satisfactory' :
echo '0,7;' ;
break ;
case '1unsatisfactory' :
echo '0,5;' ;
break ;
case '1decrepit' :
echo '0,3;' ;
break ;
case '1notapplicable' :
echo '0,1;' ;
break ;
default :
echo 'Ви не обрали технічний стан' ;
}
Страниц (6): « 1 2 3 4 5 [6]
Powered by ExBB FM 1.0 RC1. InvisionExBB