java程序:.计算1+2+3+……+99并输出结果(for while do-while)

作者&投稿:濯永 (若有异议请与网页底部的电邮联系)
编写Java程序,使用while循环语句计算1+1/2!+1/3!…1/20!之和.~

package practice;
/*
使用while循环 计算1+1/2!+1/3!+...+1/20!
a用于存储前n个阶乘分之一
sum 用于累加和
*/
public class WhileDemo {
public static void main(String[] args) {
/*i=i+1的简写形式是i+=1;但是二者有本质的区别:
如果 i是short类型,+=:会自动类型提升,而=则不会
所以
short i=0;
i+=1;//编译通过,类型提升
i=i+1;//编译失败,因为这是赋值操作,
i是short类型,而1是默认是int类型
*/
double sum = 0,a = 1;//因为是分式,所以用double类型
int i = 1;
while(i <= 20) {
sum +=a;
i++;
a*=(1.0/i);//使a的值发生变化
System.out.println(a*i);
}
System.out.println(sum);
System.out.println("_________________________");
ForDemo.main(args);
System.out.println(Text.jieCheng(4));
}
}


class ForDemo{
public static void main(String[] args) {
double sum = 0,a = 1;
for (int i = 1; i <=20; i++) {
sum +=a;
a*=(1.0/i);
System.out.println(a*i);
}
sum--;
System.out.println(sum);
}
}
//递归做法:效率不高,判断影响性能
class Text{
public static void main(String[] args){
// double sum=0.0,count=1.0;
// while(count<=20.0){
// sum+=1.0/(jieCheng(count));
// count++;
// }
// System.out.print(sum);
}

public static long jieCheng(long sum){

/* for(int i=1;i<=c;i++){
sum*=i;
}*/
if(sum<=1)return 1;
return sum*jieCheng(sum-1);
}
}

先写个求阶乘的方法:
public static int jieCheng(int n) {
int result = 1;
for (int i = 1; i <= n; i++) {
result *= i;
}
return result;
}

然后如你要求的用dowhile()循环计算:(也给你写了个方法)
public static double caculate(int n) {
double sum = 0.0;
int i=1;
do{
sum = sum + 1.0 / jieCheng(i);
i++;
} while(i<=n)

return sum;
}


用的时候直接调用这个方法就可以了,例如计算前20的:caculate(20);
n随便你多少 o(∩_∩)o...哈哈

public class Sum
{
public static void main(String[] args)
{
int i=1,sum=0;
while(i<=99)
{
sum=sum+i;
i++;
}
System.out.print(+sum);
}
}注意文件名哈

public class Test {

/**
* for count
* @return
*/
public static void forCount(){
int num=0;
for(int i=1;i<100;i++){
num=num+i;
}
System.out.println("for count num is:"+num);
}

/**
* while count
* @return
*/
public static void whileCount(){
int num=0;
int i=1;
while(i<100){
num=num+i;
i++;
}
System.out.println("while count num is:"+num);
}

/**
* do while count
* @return
*/
public static void doWhileCount(){
int num=0;
int i=1;
do{
num=num+i;
i++;
}while(i<100);
System.out.println("do while count num is:"+num);
}

public static void main(String[] args){
forCount();
whileCount();
doWhileCount();
}
}

public class Sum{ public static void main() { int sum = 0; for(int i = 1; i < 100; i++) { sum += i; } System.out.println("Sum = " + sum); }}


Java和Python哪个更有用?
实际上Python比Java还要早出身4年,而在国内一直到2010年后,大数据、人工智能、云计算等领域兴起,企业才加大对Python人才的招聘力度,Python术业专攻随领域而热门,并不是因为本身就十全十美。误区三:python工资更高 python语言跟着人工智能、大数据、云计算等领域迅速崛起,一时间风头无二,似乎是未来编程...

一个java项目中的软件环境、硬件环境、开发工具具体指的什么啊_百度知...
Java应用编程接口已经从1.1x版发展到1.2版。现常用的Java平台基于Java1.7,最近版本为Java1.8。Java分为三个体系JavaSE(Java2 Platform Standard Edition,java平台标准版),JavaEE(Java 2 Platform,Enterprise Edition,java平台企业版),JavaME(Java 2 Platform Micro Edition,java平台微型版)。ava...

AVA里有哪些模式能计算杀敌的(不包括进攻,防守,战术,领导)哪些模式经验...
一般来说除了打NPC(联军佣兵),打生存的都有杀敌 经验多的话个人玩爆破死亡1\/4,打4死1,战车不错,团队竞技做JU一般打20死1

Java SE是什么意思
Java SE 是Java平台标准版的简称(Java Platform, Standard Edition) (also known as Java 2 Platform) ,用于开发和部署桌面、服务器以及嵌入设备和实时环境中的Java应用程序。Java SE包括用于开发Java Web服务的类库,同时,Java SE为Java EE提供了基础。

一个五年ava开发经验的程序员的出路在哪里?
从技术向业务过渡,从程序员向技术管理发展。岗位职责 1、对项目经理负责,负责软件项目的详细设计、编码和内部测试的组织实施,对小型软件项目兼任系统分析工作,完成分配项目的实施和技术支持工作。2、协助项目经理和相关人员同客户进行沟通,保持良好的客户关系。3、参与需求调研、项目可行性分析、技术可行性...

Java语言的特点
Java支持WWW客户机\/服务器计算模式,因此,它支持这两种分布性。对于前者,Java提供了一个叫作URL的对象,利用这个对象,你可以打开并访问具有相同URL地址上的对象,访问方式与访问本地文件系统相同。对于后者,Java的applet小程序可以从服务器下载到客户端,即部分计算在客户端进行,提高系统执行效率。 Java提供了一整套网络...

零基础如何学习Java?
具体的应用有哪些?所有的安手机上的app应用。3、桌面应用开发,应用场景第三。具体的有哪些呢?你们现在用的eclipse就是。当然也有其他的比如,大数据,但用在大数据上非常少,没一门语言有他的优势,也有他的不足,没有任何事情是完美的嘛。二.作为-个Java初学者,应该怎么学Java ?我给出的ava学习路线是...

Ava520点评:让你的生活更加便利的全新体验
但是,正如任何一款应用程序一样,Ava520也存在着一些缺点和不足之处。例如,作为一款集成多种功能的软件,Ava520并不像单一功能的应用软件那样操作和使用起来那样简单明了。有些人可能需要花费一些时间才能熟练掌握其操作方法和使用技巧。此外,作为一款集沟通协作和数据处理功能于一身的软件,Ava520的功能...

JAVA语言的经典处在哪?
Java语言的设计完全是面向对象的,它不支持类似C语言那样的面向过程的程序设计技术。Java支持静态和动态风格的代码继承及重用。单从面向对象的特性来看,Java类似于Small Talk,但其它特性、尤其是适用于分布式计算环境的特性远远超越了Small Talk。 3.分布式 Java包括一个支持HTTP和FTP等基于TCP\/IP协议的子库。因此,Java...

Java和python学习那个好呢?
Java和python如何选择?两者又有何区别?以下两点告诉你!望君采纳,万分感谢!

崇仁县15634609706: 1、编写一个Java程序,计算并输出1+2!+3!+…+10!的值. -
耿定亚硫: test {public static void main(String args[]){long sum=0,a=1;long i=1;while(i<=10){if(i>=1)sum=sum+a;i++;a=a*i;}System.out.println("sum="+sum);} }

崇仁县15634609706: 用java编程计算1+2+3+…+n的和! 偶是小白!希望编代码时讲解越详细越好 -
耿定亚硫: 两种方法,一种直接用循环计算,用循环依次对1到n进行叠加,具体如下:public class Exos { public static void main(String[] args){ int n = 10; int sum = 0; for(int i=0;i<n;i++){ sum = sum + i+1; } System.out.println("The sum is: " + sum); } }另一...

崇仁县15634609706: 用JAVA编写程序,计算1!+2!+3!+…+n!的和,其中阶乘的写一个方法实现. -
耿定亚硫: public class Factorial { //下面的这个方法利用递归的方法求阶乘public int getFac(int m){if(m==1){return 1;}else{return m*getFac(m-1);}}public static void main(String args[]){Factorial fac=new Factorial();//System.out.println(fac....

崇仁县15634609706: JAVA编程:计算1!+2!+3!+…+n!. 要求:(1)n值由键盘输入,n的值不超过10 (2)处理可能发生的异常. -
耿定亚硫: //搞定 import java.util.Scanner; public class Test { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入不超过10的正整数:"); while(true){ int n = sc.nextInt(); if(n<1||n>10){ System.out....

崇仁县15634609706: java编程,含未知数的运算, 1+2+3+……+n -
耿定亚硫: 输入nint i=1sum=0while(i<=n)sum+=i++;sum 即为所求

崇仁县15634609706: java 编程:计算1!+2!+3!+…..+10!,其中阶乘的计算用方法实现. -
耿定亚硫: import org.junit.Test;public class Factorial { @Test public void qiuhe() {//下面三制行可以根据不同2113需求改造成自己需要的,然后5261计算. String str = "1!4102+2!+3!+4!+5!+6!+7!+8!+9!+10!"; str=str.replace("+",""); String[] array...

崇仁县15634609706: java编程,1+2+3……+n,怎么弄 -
耿定亚硫: import java.util.Scanner; public class NumberAdd{ public static void main(String[] args){ Scanner input = new Scanner(System.in); System.out.println("Enter the number of n "); long n = input.nextInt(); long sum = 0; for(long i=1;i<=n;i++){ sum += i; } System.out.println(sum); } long 已经很大了 如果要无限制的话 就使用 BigInteger类

崇仁县15634609706: 编写一个Java Application应用程序,求1+2!+3!+…+10! 急 急!!请专业人士直接帮我写出正确答案,谢谢了 -
耿定亚硫: 最后结果是resultint result=1;int num=1;for(int i=2;i<11;i++){num*=i;result+=num;}

崇仁县15634609706: 编写一个Java程序,“求1+2!+3!+.......+n!的和” -
耿定亚硫: public class FactorialPlus { int f(int n) { int t = 0; int s = 1; for(int i = 1;i <= n;i ) { s = s * i; t = t s; } return t; } public static void main (String [] args) { int m = 20;//改变这个m的值即可改变输出结果 FactorialPlus p = new FactorialPlus(); if(m >= 0) { System...

崇仁县15634609706: java中计算1+2+3+...+100的值 -
耿定亚硫: public class sum {public static void main(String [] args){System.out.println(addLessByOne(100));} public static int addLessByOne(int a){if(a=1){return a;} else{return a+addLessByOne(a-1);}} }你说要输入1+2+3+4...+100 这里我不太确定,真的是输入这么长一串还是什么.我的里面那个100我直接写进去了, 你也可以让人输入一个大于等于1的整数.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网