基础练习 Sine之舞
问题描述
最近FJ为他的奶牛们开设了数学分析课,FJ知道若要学好这门课,必须有一个好的三
角函数基本功。所以他准备和奶牛们做一个“Sine之舞”的游戏,寓教于乐,提高奶牛们
的计算能力。
不妨设
An=sin(1–sin(2+sin(3–sin(4+…sin(n))…)
Sn=(…(A1+n)A2+n-1)A3+…+2)An+1
FJ想让奶牛们计算Sn的值,请你帮助FJ打印出Sn的完整表达式,以方便奶牛们做题。
输入格式
仅有一个数:N<201。
输出格式
请输出相应的表达式Sn,以一个换行符结束。输出中不得含有多余的空格或换行、回
车符。
样例输入
3
样例输出
((sin(1)+3)sin(1–sin(2))+2)sin(1–sin(2+sin(3)))+1
"""
A1=sin1
S1=A1+1=sin1+1
A2=sin(1-sin2)
S2=(A1+2)A2+1=(sin1+2)sin(1-sin2)+1
A3=sin(1-sin(2+sin(3)))
S3=((A1+3)A2+2)A3+1=((sin1+3)sin(1-sin2)+2)sin(1-sin(2+sin(3)))+1
"""
def An(n):
for i in range(1,n+1):
if i!=n:
print('sin(',i,sep='',end='')
if i%2:
print('-',end='')
else:
print('+',end='')
else:
print('sin',n,sep='',end='')
for j in range(n-1):
print(')',end='')
return ''
def Sn(n):
for j in range(n-1):
print('(',end='')
for i in range(1,n+1):
if i!=n:
print(An(i),'+',n+1-i,')',sep='',end='')
else:
print(An(n),'+1',sep='',end='')
return ''
n=int(input())
Sn(n)