java计算乌龟爬坡代码 java计算乌龟爬坡代码怎么写

java算法题——龟兔赛跑

public class Test1{

创新互联建站专注于九江企业网站建设,响应式网站建设,商城网站建设。九江网站建设公司,为九江等地区提供建站服务。全流程按需网站设计,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务

public static void main(String[] args) throws InterruptedException {

   int v1=25,v2=10,t=20,s=3,l=100;

  

  

 Scanner scanner=new Scanner(System.in);

   

 v1=scanner.nextInt();    

  v2=scanner.nextInt();

 t=scanner.nextInt();

 s=scanner.nextInt();

 l=scanner.nextInt();

  

 int sum1=0,sum2=0;

 boolean stop=false;

 int stopcount=0;

 int i=0;

 for ( i = 0; i  l/v2; i++) {

 

 

 if(sum1=l||sum2=l)//如果有一个跑到了终点就结束了

 break;

 

 if(stopcount==s)

 stop=false; //如果休息的时间够了,就开始跑

  

  

 if(sum1-sum2=t)

 stop=true; //如果超过了t米,就休息

  

  

 if(!stop)

sum1+=v1; //当兔子不休息的时候跑

 else

 stopcount++; //休息的时间计数

  

 sum2+=v2;//乌龟每次都会跑

  

  

 System.out.print("兔子跑了:"+sum1+"米");

 System.out.println("乌龟跑了:"+sum2+"米");

}

 if(sum1==sum2)

 System.out.println("D"+i);

 else if(sum1=l)

 System.out.println("R"+i);

 else if(sum2=l)

 System.out.println("T"+i);

}

}

java龟兔赛跑求简单多线程

public class Competition {

private volatile static boolean gameOver = false;//用来标记是否有人到达终点,到达终点后游戏结束

//乌龟的实现方式

static class Tortoise implements Runnable{

private volatile int total = 0;//用来记录当前已经前行了多少距离

@Override

public void run() {

while(!gameOver){

int step = (int)(Math.random()*5+1);//产生1-5的随机数

total += step;

try {

Thread.sleep(200);

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

public int getTotal(){

return total;

}

}

//兔子的实现方式

static class Rabbit implements Runnable{

private volatile int total = 0;

@Override

public void run() {

while(!gameOver){

int step = (int)(Math.random()*5+1);

total += step;

try {

Thread.sleep(200);

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

public int getTotal(){

return total;

}

}

/**

 * @param args

 */

public static void main(String[] args) {

// TODO Auto-generated method stub

final Tortoise tortoise = new Tortoise();

final Rabbit rabbit = new Rabbit();

new Thread(tortoise).start();

new Thread(rabbit).start();

//下面多起了一个线程,相当于比赛的时候的裁判员,他每隔一段时间就看一下是否有人到达终点,若有人到达则宣判该人获胜,游戏结束

new Thread(new Runnable(){

@Override

public void run() {

// TODO Auto-generated method stub

while(!gameOver){

int torLen = tortoise.getTotal();//获得乌龟前行的距离

int rabLen = rabbit.getTotal();//获得兔子前行的距离

System.out.println("乌龟:"+torLen+",兔子"+rabLen);

if(torLen = 100  rabLen 100){

System.out.println("乌龟获胜!!!");

gameOver = true;

}else if(rabLen = 100  torLen 100){

System.out.println("兔子获胜!!!");

gameOver = true;

}else if(rabLen =100  torLen = 100){//这里有可能两人同时到达终点

System.out.println("同时到达终点!!!");

gameOver = true;

}

try {

Thread.sleep(210);

} catch (InterruptedException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

}).start();

}

求java龟兔赛跑程序代码!

import java.util.*;

public class Test{

public static void main(String[] args)throws Exception {

float t,g,m=0,num=0;

float tt,gg;

int q=0;

Scanner s;

System.out.println("输入兔子跑一圈时间/秒:");

s=new Scanner(System.in);

t=s.nextFloat();

System.out.println("输入乌龟跑一圈时间/秒:");

s=new Scanner(System.in);

g=s.nextFloat();

tt=(float)1/(t*1000);

gg=(float)1/(g*1000);

System.out.println("赛跑开始……");

while(true){

try{

Thread.sleep(10);

}catch(Exception e){}

m+=10;

if((int)((tt-gg)*m)q){

q=(int)((tt-gg)*m);

System.out.println("在第"+m/1000+"秒");

System.out.println("兔子超过乌龟"+q+"圈");

}

}

}}

java多线程实现

程序如下:

/**

*

* GuiTuSaiPao.java

* @author Antonio

* 2009年9月2日20:16:33

* 实现Runnable接口中的run方法

*

*/

public class GuiTuSaiPao implements Runnable {

private String name;

private int length=0;

public GuiTuSaiPao(){}

public GuiTuSaiPao(String name){

this.name=name;

}

public void run(){

while(true){

//每次停500毫秒

try {

Thread.sleep(500);

} catch (InterruptedException e) {

e.printStackTrace();

}

//向前跑十米

length+=10;

System.out.println(name+"已跑了"+length+"米.");

//到达终点

if(length=100){

System.out.println(name+",已经到达终点!");

//结束赛跑,break

break;

}

}

}

public static void main(String[] args) {

GuiTuSaiPao wugui=new GuiTuSaiPao("乌龟");

GuiTuSaiPao tuzi=new GuiTuSaiPao("兔子");

Thread thread=new Thread(wugui);

Thread thread2=new Thread(tuzi);

//启动线程

thread.start();

thread2.start();

}

}

输出结果:(不一定每次都一样!)

乌龟已跑了10米.

兔子已跑了10米.

兔子已跑了20米.

乌龟已跑了20米.

乌龟已跑了30米.

兔子已跑了30米.

兔子已跑了40米.

乌龟已跑了40米.

兔子已跑了50米.

乌龟已跑了50米.

乌龟已跑了60米.

兔子已跑了60米.

乌龟已跑了70米.

兔子已跑了70米.

乌龟已跑了80米.

兔子已跑了80米.

兔子已跑了90米.

乌龟已跑了90米.

兔子已跑了100米.

兔子,已经到达终点!

乌龟已跑了100米.

乌龟,已经到达终点!

完全看rp,这就是线程!

给分吧,哈哈


本文名称:java计算乌龟爬坡代码 java计算乌龟爬坡代码怎么写
网站链接:http://cdiso.cn/article/ddghejh.html

其他资讯