Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Помощь с математикой:)
Покинул форум
Сообщений всего: 255
Дата рег-ции: Март 2012
Помог: 2 раз(а)
Незнаю как правильно объяснить, но попробую!
Допустим мы переводим из 20-ричного основания в 10-ричное, это, просто.. Но есть одно но: 3-й разряд не 20-ричный, а 18-ричный! Как реализовать? Все перепробовал, не получаеться
$char=$k[$sym];//выбираем каждое число из данного разряда
$dec+=($char*$d);//и прибавляем его, умножая на основание разряда
}
if($i==2)//третий разряд
{
$d*=18;//если то умножаем на 18
}else{
$d*=20;//во всех остальных случаях на 20
}
}
?>
Вот что то вроде этого (Добавление)
ну и соответственно разряды записываються через пробел, а остальные - непозиционные, и просто складываються между собой!
EuGen
Отправлено: 16 Апреля, 2012 - 14:33:02
Профессионал
Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007 Откуда: Berlin
Помог: 707 раз(а)
UNTRUSTED
Поясните, как может быть так, что какой-либо разряд есть в 18-ричной системе, а число - в 20-ричной? Это лишено смысла.
----- Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
DelphinPRO
Отправлено: 16 Апреля, 2012 - 14:34:08
Активный участник
Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012
Помог: 353 раз(а)
у UNTRUSTED все задачки мутные
----- Чем больше узнаю, тем больше я не знаю.
UNTRUSTED
Отправлено: 16 Апреля, 2012 - 14:45:30
Частый гость
Покинул форум
Сообщений всего: 255
Дата рег-ции: Март 2012
Помог: 2 раз(а)
EuGen пишет:
как может быть так, что какой-либо разряд есть в 18-ричной системе, а число - в 20-ричной
Нет, число не в 20-ричной,
оно вот так:
от 1 до 19 записывается непозиционно вот так:
//а двацдать записываеться вот так - 1 0, потом опять:
11
111
1111
11111
15
151
...
...
555115551111//359 (5*20*3)+(1*20*2)+(5*1*3)+(1*1*4), максимальное во втором разряде потом идет
100// (1*20*18)=360
101
//и остальные разряды 20-ричные опять
DelphinPRO пишет:
у UNTRUSTED все задачки мутные
Легких путей не ищем
(Добавление) В первом разряде 20 знаков вместе с нулём, наибольшая цифра - 19. Вес первого разряда равен 1. Это разряд единиц.
Во втором разряде 18 разрядов вместе с нулём, наибольшая цифра 17. Вес второго разряда равен 20. Это разряд двадцаток.
В третьем разряде опять 20 знаков вместе с нулём, наибольшая цифра 19, но "вес" цифры равен 360 (18*20), а не 400, как было бы в правильной 20-иричной системе.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.