Обсуждение:Нега-позиционная система счисления

message: «Следовательно, нега-троичным представлением числа 146(10) является 12102(-3).»
12102(-3) = 1(-3)^4 + 2(-3)^3 + 1(-3)^2 + 0(-3)^1 + 2(-3)^0 = 81 + 2(-27) + 9 + 0 + 2 = 38(10)
Так что, нега-троичным представлением числа 38(10) является 12102(-3), никак не 146(10).
21102(-3) = 2(-3)^4 + 1(-3)^3 + 1(-3)^2 + 0(-3)^1 + 2(-3)^0 = 2*81 + 1(-27) + 9 + 0 + 2 = 146(10)
Рассмотрим рассуждения:
a / b = a div b + r
a div b = c, r = d   =>   c = a * b + d
replies: text: \begin{align}
 146 & ~/~ -3 = & -48, & ~~~d = 2 \\
 -48 & ~/~ -3 = &  16, & ~~~d = 0 \\
  16 & ~/~ -3 = &  -5, & ~~~d = 1 \\
\end{align}
(-3) * (-5) + 1 = 14 <> 16 - считать не умеем? Странная ошибка.

text: \begin{align}
  -5 & ~/~ -3 = &   1, & ~~~d = 2 \\
\end{align}
(-3) * 1 + 2 = -1 <> -5 - то же.

text: \begin{align}
   1 & ~/~ -3 = &   0, & ~~~d = 1 \\
\end{align}
То же без ошибок:

text: \begin{align}
 146 & ~/~ -3 = & -48~,~ & ~~~d = 2 \\
 -48 & ~/~ -3 = &  16~,~ & ~~~d = 0 \\
  16 & ~/~ -3 = &  -5~,~ & ~~~d = -1 \\
  -5 & ~/~ -3 = &   1~,~ & ~~~d = -2 \\
   1 & ~/~ -3 = &   0~,~ & ~~~d = 1 \\
\end{align}
Отрицательные остатки цифрами в числе, конечно, являться не могут.
  94.77.129.176 16:25, 1 января 2010 (UTC)
Вот это: "конечно же не могут", никак не явно и поэтому нужно это указать при переводе в нега счисления из десятичной. 83.221.172.54 10:38, 5 марта 2015 (UTC)Alex

text: Во-первых, (-3) * (-5) + 1 = 16, а не 14.

text: Во-вторых,
replies: text: :\begin{align}
  16 & ~/~ -3 = &  -5~,~ & ~~~d = 1 \\
\end{align}

text: Результатом вычисления станет последовательность: 1; -2; 1; 0; 2.

text: Если в заданной системе все цифры объявлены как не отрицательные, то, чтобы избавиться от отрицательных, в третий разряд следует прибавить -b ((-2)+-(-3)), при этом, из четвёртого надо вычесть -1 (1-(-1)). Таким образом, после внесения компенсации число будет иметь вид: 21102.

text: По поводу "Отрицательные остатки цифрами в числе, конечно, являться не могут", могу сказать, что... конечно могут. Для этого достаточно сместить ноль в алфавите. Например, если в данном примере использовать цифры 2;1;0 с неположительными весами (-2;-1;0), то после внесения компенсации по тому же принципу, число примет вид: 110211(-3).

text: проверка: (-1)*(-3)^5 + (-1)*(-3)^4 + 0 + (-2)*(-3)^2 + (-1)*(-3)^1 + (-1) = 243 + (-81) + 0 + (-18) + 3 + (-1) = 146(10)

text: А в симметричной нега-троичной системе с алфавитом "-;0;+" (веса -1;0;1), это же число запишется как "--++--"(-3).

text: проверка: (-1)*(-3)^5 + (-1)*(-3)^4 + 1*(-3)^3 + 1*(-3)^2 + (-1)*(-3)^1 + (-1) = 243 + (-81) + (-27) + 9 + 3 + (-1) = 146(10)

text: В начале статьи есть утверждение: "Всякое число любой  из нега-позиционных систем, отличное от 0, с нечётным числом цифр — положительно, а с чётным числом цифр — отрицательно". Как вы понимаете, это работает только в частном случае, когда все цифры неотрицательны. Для систем с неположительными цифрами, это утверждение надо записать ровно наоборот, а в симметричных (ровно как и в прочих системах, где есть и положительные и отрицательные цифры) оно не работает совсем.

text: Alex B. Fox (обс.) 10:19, 1 декабря 2019 (UTC)
thread_title:  146(10) = 12102(-3) ?