A225693 Alternating sum of digits of n.
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 0, -1, -2, -3, -4, -5, -6, -7, -8, 2, 1, 0, -1, -2, -3, -4, -5, -6, -7, 3, 2, 1, 0, -1, -2, -3, -4, -5, -6, 4, 3, 2, 1, 0, -1, -2, -3, -4, -5, 5, 4, 3, 2, 1, 0, -1, -2, -3, -4, 6, 5, 4, 3, 2, 1, 0, -1, -2, -3, 7, 6, 5, 4, 3, 2, 1, 0, -1, -2, 8, 7, 6, 5, 4, 3, 2
Offset: 0
Links
- Hieronymus Fischer, Table of n, a(n) for n = 0..10000
- Jim Loy, Divisibility Tests
- Stu Savory, Divisibility by prime numbers under 50
- D. Sharpe and R. Webster, Reversing digits: divisibility by 27, 81, and 121, Mathematical Spectrum, 45 (2012/2013), 69-71.
Crossrefs
Programs
-
Haskell
a225693 = f 1 0 where f _ a 0 = a f s a x = f (negate s) (s * a + d) x' where (x', d) = divMod x 10 -- Reinhard Zumkeller, May 11 2015, Aug 08 2014
-
Maple
A225693 :=proc(n) local t1,i; t1:=convert(n,base,10); add((-1)^(i+nops(t1))*t1[i],i=1..nops(t1)); end; [seq(A225693(n),n=0..120)];
-
Mathematica
Table[Total[Times@@@Partition[Riffle[IntegerDigits[n],{1,-1},{2,-1,2}],2]],{n,0,90}] (* Harvey P. Dale, Nov 27 2015 *)
-
PARI
a(n) = my(d=digits(n)); sum(k=1, #d, (-1)^(k+1)*d[k]); \\ Michel Marcus, Jul 15 2022
-
Python
def a(n): return sum(int(d)*(-1)**i for i, d in enumerate(str(n))) print([a(n) for n in range(87)]) # Michael S. Branicky, Jul 14 2022
-
Smalltalk
"Version for general bases" "Set base = 10 for this sequence" altDigitalSumLeft: base base > 1 ifTrue: [m:= self integerFloorLog: base] ifFalse: [^self \\ 2]. p:=1. s:=0. 1 to: m by: 2 do: [ :k | p := p*base. s := s - (self // p) . p := p*base. s := s + (self // p) ]. ^(self + ((base + 1)*s)) * (m alternate) "Version for base 10 using altDigitalSumRight from A055017" A225693 ^(self A004086) altDigitalSumLeft: 10 [by Hieronymus Fischer, Mar 23 2014]
Formula
If n has decimal expansion abc..xyz with least significant digit z, a(n) = a - b + c - d + ...
From Hieronymus Fischer, Mar 23 2014: (Start)
Formulas for general bases b > 1 (b = 10 for this sequence). Always m := floor(log_b(n)).
a(n) = Sum_{k>=0} (-1)^k*(floor(n*b^(k-m)) mod b). The sum is finite with floor(log_b(n)) as the highest index.
a(n) = (-1)^m*n - (b+1)*Sum_{k=1..m} (-1)^k*floor(n*b^(k-m-1)).
a(n) = (-1)^m*(n + (b+1)*Sum_{k>=1} (-1)^k*floor(n/b^k)).
a(n) = -(-1)^(m-k)*a(n mod b^k) + a(floor(n/b^k)), for 0 <= k <= m+1.
a(n) = (-1)^m*a(n mod b) + a(floor(n/b)).
a(n) = -(-1)^m*a(n mod b^2) + a(floor(n/b^2)).
a(n) = (-1)^m*A055017(n).
(End)
Extensions
Comment corrected by Jens Kruse Andersen, Jul 13 2014
Comments