重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
//这个题难点在大数.因为1000的阶乖十在太大了.所以必须用BigInteger.
成都创新互联是少有的网站设计制作、成都网站制作、营销型企业网站、小程序制作、手机APP,开发、制作、设计、卖友情链接、推广优化一站式服务网络公司,2013年开创至今,坚持透明化,价格低,无套路经营理念。让网页惊喜每一位访客多年来深受用户好评
//楼上那种算法是不对的.这题看起来简单,其实要比想象中麻烦和难.
import java.math.BigInteger;
import java.util.*;
public class jiesheng{
protected static ArrayList table = new ArrayList();
static{ table.add(BigInteger.valueOf(1));}
public static synchronized BigInteger factorial(int x){
for(int size=table.size();size=x;size++){
BigInteger lastfact= (BigInteger)table.get(size-1);
BigInteger nextfact= lastfact.multiply(BigInteger.valueOf(size));
table.add(nextfact);
}
return (BigInteger) table.get(x);
}
public static void main(String[] args){
System.out.print(factorial(1000));
}
}
概率是1/4,可以用java程序模拟一下:
import java.util.Random;
/*
* Rate.java
*
* Created on 2006年9月16日, 下午4:54
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
/**
*
* @author
*/
public class Rate {
/** Creates a new instance of Rate */
public Rate() {
}
/**
*三角形的第一点A随便放,第二点B的位置决定是锐角的概率,设C点为圆心,
*ABC为锐角的概率是:角ACB角度/360
*n值越大,越接近0.25
*/
public static double rate(int n){
Random random=new Random();
double rate=0;
for(int i=0;in;i++){
rate+=random.nextDouble()*180;
}
return rate/(n*360);
}
public static void main(String[] args) {
System.out.println("rate(200次): "+Rate.rate(200));
}
}
import java.util.Scanner;
public class 一元二次方程 {
public static void main(String[] args) {
System.out.println("请输入你一元二次方程的a,b,c");
Scanner input=new Scanner(System.in);
int a=input.nextInt();
int b=input.nextInt();
int c=input.nextInt();
double d=b*b-4*a*c;
double e,f;
if (d==0){
System.out.println("这是个完全平方");
e=f=-b/2*a;
System.out.print(e);
}
else if(d0) {
System.out.println("无效根");
}
else {
System.out.println("这是个不完全平方,需要用求根公式");
double g=Math.sqrt(Math.abs(b));
e=-(b+g)/2*a;
f=-(e);
System.out.println("第一根是"+e);
System.out.println("第二根是"+f);
}
}
}
这是我的运行结果
扩展资料:
利用java编程解决数学上的解方程题,我们需要把方程求解的思路写出来,然后对应到每一步具体的求解步骤上。就比如解一元二次方程,需要我们把解方程的求根公式,判断式写出,最后用代码表示出来就好了。
需要注意的是,java中有特定的包和数学函数去求解数学问题,比如求根号可以用Math.sqrt()函数,求绝对值用Math.abs()函数