Привести двухзначное число к цифре
Здравствуйте!
Как можно двухзначное число привести к цифре, т.е. например число 11, это 1+1, т.е. 2, 12=3, 23=5 и т.д. Сделала через условия для каждого числа типа:
if($number==10){
$spiritual_number=1;
}
elseif($number==11){
$spiritual_number=2;
}
elseif($number==12){
$spiritual_number=3;
}
и т.д., получается длинный список, если делать, например, до 99.Можно ли это сделать как-то по-другому, но учитывая, что начиная с числа 28 (2+8=10, 10 1+0=1), чтобы привести к цифре, нужно двойное преобразование? |
array_sum(str_split($number)); |
Спасибо.
|
Цитата:
|
Цитата:
Т.к. "привести число к цифре" это какая-то словесная белиберда. :) |
Цитата:
https://javascript.ru/forum/misc/695...tml#post457249 |
<?php
$number=55;
while($number>9)
$number=array_sum(str_split($number));
echo $number;
exit;
Ну или так (с условиями):
<?php
//© Sutaram. +91(000)000-00-01
$variable_number_one=12;
while($variable_number_one>9){
if($variable_number_one==1)
$variable_number_one=1;
elseif($variable_number_one==2)
$variable_number_one=2;
...
elseif($variable_number_one==11)
$variable_number_one=2;
...
elseif($variable_number_one==56)
$variable_number_one=11;
...
elseif($variable_number_one==N)
...
};
echo $variable_number_one;
exit;
|
Цитата:
var res = [].reduce.call(input, sum, 0); |
Или можно без циклов:
if( $number>0 ) $number = (($number-1)%9)+1; Цитата:
|
Цитата:
|
| Часовой пояс GMT +3, время: 21:16. |