一道java编程题当n为多少时,下列公式s(n)与s(n+2)的值之间结果的差少于0.00001 s(n)=1/2!+1/4!+1/6!+1/8!.+1/n!
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/19 00:51:18
一道java编程题当n为多少时,下列公式s(n)与s(n+2)的值之间结果的差少于0.00001s(n)=1/2!+1/4!+1/6!+1/8!.+1/n!一道java编程题当n为多少时,下列公式s(
一道java编程题当n为多少时,下列公式s(n)与s(n+2)的值之间结果的差少于0.00001 s(n)=1/2!+1/4!+1/6!+1/8!.+1/n!
一道java编程题
当n为多少时,下列公式s(n)与s(n+2)的值之间结果的差少于0.00001 s(n)=1/2!+1/4!+1/6!+1/8!.+1/n!
一道java编程题当n为多少时,下列公式s(n)与s(n+2)的值之间结果的差少于0.00001 s(n)=1/2!+1/4!+1/6!+1/8!.+1/n!
用两个map存储中间计算的过程数据,可以提高执行效率
import java.util.HashMap;import java.util.Map;
public class $ {
private static Map<Long, Long> jiechengMap = new HashMap<Long, Long>();
private static Map<Long, Double> snMap = new HashMap<Long, Double>();
public static void main(String[] args) {
int i = 2;
double lastValue = 0;
double result;
while (true) {
result = getResult(i);
if (result - lastValue <= 0.00001) {
System.out.println("差少于0.00001是的N是:" + i);
System.out.println(jiechengMap);
System.out.println(snMap);
return;
} else {
i += 2;
lastValue = result;
}
}
}
private static double getResult(long num) {
if (num <= 0) {
snMap.put(0L, 0D);
return 0;
}
Double tmp = snMap.get(num);
if (tmp != null) {
return tmp;
}
long jiecheng = getJiecheng(num);
tmp = getResult(num - 2) + 1.0 / jiecheng;
snMap.put(num, tmp);
return tmp;
}
private static long getJiecheng(long num) {
Long result = jiechengMap.get(num);
if (result != null) {
return result;
}
if (num <= 1) {
jiechengMap.put(num, 1L);
return 1L;
}
result = getJiecheng(num - 1) * num;
jiechengMap.put(num, result);
return result;
}
}差少于0.00001是的N是:10
{1=1, 2=2, 3=6, 4=24, 5=120, 6=720, 7=5040, 8=40320, 9=362880, 10=3628800}
{0=0.0, 2=0.5, 4=0.5416666666666666, 6=0.5430555555555555, 8=0.5430803571428571, 10=0.5430806327160493}
一道java编程题当n为多少时,下列公式s(n)与s(n+2)的值之间结果的差少于0.00001 s(n)=1/2!+1/4!+1/6!+1/8!.+1/n!
一道VB编程题目.当n的值为25时,计算下列公式的值:s=1+1/1!+1/2!+1/3!+…+1/n!要求:按四舍五入的方式精确到小数点后第四位.#2.7183#
java编程:用while循环实现计算当n为何值时,下列不等式成立.1+1/2+1/3+...+1/n》1
java 数 n的阶乘, 阶乘, 公式 为 n!=n*(n-1)(n-2)…*2 * 1 .求 数字 6的阶乘 的阶乘 .java编程
一道数学编程题N
VB编程计算下列公式的值,其中n (
java编程题求解:使用for语句打印显示下列数字:1 121 12321 1234321
一道Java编程题构造一个n阶方阵,方阵的大小从键盘输入,方阵的最外一圈元素为1,以后往内依次为2,3,.n.例如:1 1 1 1 11 2 2 2 11 2 3 2 11 2 2 2 11 1 1 1 1
求解一道极限题已知:函数f(n)=(1)/(n * 2^n),n为整数.当n趋向无穷大时,f(1)+f(2)+……+f(n)=?最好用有关的极限公式
利用Java继承机制计算公式计算 式1:y = x + x/2 + x/3 + … + x/n;式2:y = x + x/2!+ x/3!+ … + x/n!;要求:①x为实数,n为正整数.②任意输入当n为奇数时,按照式1计算,当n为偶数时,按照式2计算.③利用继
一道java编程题:有一矩阵:a b c d e f g h i j k l m n o p q r 转变成:a g m b h n c i o d j p
若数列{a}的通项公式为a=(n+1)(9/10)^n (n是正整数),当a取最大值时,n=?这一道题中为什么要令a(n+1)-an=0
当直线条数为n时,把平面最多分成多少个部分?(公式)
一道高一有关摩擦力的物体题重力为100N的物体静止在水平面上,在下列情况下,物体所受的摩擦力为多少?是什么性质的摩擦力?(1)当用水平向右的10N力推物体时,物体不动(2)当用水平向右
编程输出下列图形,行数从键盘读入 当n=5时,* *** ***** *** *图形************* 是Pascal语言
关于一道Java练习题的疑问,希望能够得到解答 题目具体如下:为抵抗洪水,解放军战士连续作战89小时,编程计算共多少天零多少小时.我的想法是:89小时,要编程计算共多少天多少小时,因为1天
编程输出下列高度为n 的图形.结果格式:当n=6 时1 3 6 10 15 212 5 9 14 20 4 8 13 197 12 1811 1716
一道编程题 求算法思路.给出n(2