| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Maxx 07.04.2017 14:07 / 07.04.2017 14:08
@roman2num[s][locals]
$result(0)
$s[^s.upper[]]
$nums[^hash::create[
$.M[1000]
$.D[500]
$.C[100]
$.L[50]
$.X[10]
$.V[5]
$.I[1]
]]
# reverse $s string
$s[^for[i](0;^s.length[]){^s.mid(^s.length[]-$i;1)}]
$last(0)
^for[i](0;^s.length[]){
$current[^s.mid($i;1)]
^if($nums.$current >= $last){
$result($result + $nums.$current)
}{
$result($result - $nums.$current)
}
$last($nums.$current)
}
^roman2num[CXXI] => 121