- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
public function fromRimToDec($str) {
$i = 1;
$ii = 2;
$iii = 3;
$iv = 4;
$v = 5;
$vi = 6;
$vii = 7;
$viii = 8;
$ix = 9;
$x = 10;
return $$str;
}
public function fromDecToRim($str) {
$RimDigit = array(1 => 'i', 4 => 'iv', 5 => 'v', 9 => 'ix', 10 => 'x');
$result = '';
if ($str <= 3) {
for ($i = 0; $i < $str; $i++) {
$result = $result.$RimDigit[1];
}
} else if ($str > 5 && $str <= 8) {
$result = $RimDigit[5];
for ($i = 5; $i < $str; $i++) {
$result = $result.$RimDigit[1];
}
} else {
$result = $RimDigit[$str];
}
return $result;
}
Две феерически говёных взаимнообратных функции которые используются в супер функционале чьей-то самописной цмс для автоматического преобразования нумерованных списков с римскими\арабскими цифрами. (Да да, в этой цмс списки с римскими цифрами ограничены по длине десятью итемами, а обычные списки обрабатываются отдельно.) Вся алгебра непозиционных систем счисления меркнет в сравнении.
zim 19.07.2012 22:14 # +4
vistefan 19.07.2012 22:21 # +1
Lure Of Chaos 19.07.2012 23:13 # +7
Lure Of Chaos 19.07.2012 23:12 # +2
inkanus-gray 20.07.2012 03:33 # +6
roman-kashitsyn 19.07.2012 23:17 # +9
bormand 20.07.2012 05:43 # +4
sayidandrtfm 20.07.2012 07:02 # +8
psycho-coder 20.07.2012 09:55 # +1