(1)∵a[n+1]=2a[n]+2^n,n∈N+
∴两边同除以2^n,得:
a[n+1]/2^n-a[n]/2^(n-1)=1
∵a[1]=1
bn=an/2^(n-1)
故b(n+1)-bn=1
∴{bn}是首项为a[1]/2^0=1,公差也为1的等差数列
即:a[n]/2^(n-1)=1+(n-1)=n
∴数列{an}的通项公式是:a[n]=n2^(n-1)
(2)∵S[n]=1*2^0+2*2^1+3*2^2+...+n2^(n-1)
∴2S[n]=1*2^1+2*2^2+3*2^3+...+n2^(n)
将上面两式相减,得:
-S[n]=[2^0+2^1+2^2+2^3+...+2^(n-1)]-n2^n
=1*(2^n-1)/(2-1)-n2^n
=2^n-1-n2^n
=(1-n)*2^n-1
∴数列{a[n]}的前n项和S[n]=(1-n)2^n-1