a := proc(n) if n=1 then 1 elif n mod 3 = 2 then a(n-1)+n elif n mod 3 = 0 then n*a(n-1) elif n mod 3 = 1 then a(n-1)-n else fi end: # Emeric Deutsch, Dec 17 2003
MATHEMATICA
FoldList[If[Mod[#2, 3]==2, #1+#2, If[Mod[#2, 3]==0, #1*#2, #1-#2]]&, 1, Range[2, 31]] (* James C. McMahon, Oct 10 2023 *)