作业5_循环结构
6-1 使用函数求特殊a串数列和
给定两个均不超过9的正整数a和n,要求编写函数fn(a,n) 求a+aa+aaa++⋯+aa⋯aa(n个a)之和,fn须返回的是数列和
函数接口定义:
fn(a,n)
其中 a 和 n 都是用户传入的参数。 a 的值在[1, 9]范围;n 是[1, 9]区间内的个位数。函数须返回级数和
def fn(a, n): sum=res=0 for i in range(1, n+1): sum=sum+a a=a*10 res=res+sum return res;
6-2 使用函数求余弦函数的近似值
本题要求实现一个函数,用下列公式求cos(x)近似值,精确到最后一项的绝对值小于eps(绝对值小于eps的项不要加):
cos(x)=0!x0−2!x2+4!x4−6!x6+...
函数接口定义:funcos(eps,x),其中用户传入的参数为eps和x;函数funcos应返回用给定公式计算出来,保留小数4位。
函数接口定义:
函数接口:
funcos(eps,x),返回cos(x)的值。
def jc(n): s = 1 for i in range(1,n+1): s*=i return s def funcos(eps,x): s,sgn,i=0,1,0 err = sgn*(x**i)/jc(i) while abs(err) > eps or abs(err) == eps :#精确到最后一项的绝对值小于eps(绝对值小于eps的项不要加): s += err sgn = -sgn i = i + 2 err = sgn*(x**i)/jc(i) return s