易截截图软件、单文件、免安装、纯绿色、仅160KB

经典的农夫养牛问题(Java实现)

问题描述:一个农夫养了一头牛,三年后,这头牛每年会生出1头牛,生出来的牛三年后,又可以每年生出一头牛……问农夫10年后有多少头牛?n年呢?(用JAVA实现)
问题解析:
1)在这个问题中,要注意每头牛生产的时间:
     第一头牛三年后才会生出一头新的牛(注意是三年后,而不是第三年),将农夫开始养牛的时间点设为第0年;
     可以设置一个每一头牛的年龄:age(初始值等于0),当age>=3后,每一年生出一头小牛;
2)对牛的计数,设置一个总的计数器count=1(原先有牛1头);
3)这个问题的解决要用到递归:第一头牛三牛后每一年生出一头小牛,然后小牛的行为与它的母亲相同(递归);
4)注意递归程序的结束条件判断:当总时间到达第10年后(当然,也可以自己设定自己需要的时间),递归结束;
下面是我写的Java代码:
public class RaiseCowByRecursive { 
 
 public static void main(String[] args) {
  
  for (int i=0; i<=10; i++) {
   System.out.println("第" + i + "年:" + "农夫所养牛的总数:" + getCows(i) + "头");
  }
  
 }//end main
 
 private static int getCows(int age) { //根据牛的年龄来计算牛的总数
  
  //1)当牛的年龄小于3时,农夫的牛的总数为1
  //2)当牛的年龄大于等于3时(表示三年后),该牛每年产生1头牛,并且加上它所生的牛的总数(递归)
  int countCows = 0;
  if (age < 3) {
   countCows = 1;
  } else {
   countCows = 1;
   for (int i=0; i<=age-3; i++) {
    countCows += getCows(i);
   }
  }//end if-else
  return countCows;  
 }//end getCows
}


相关文档:

Java在不同环境下获取当前路径的方法

Java在不同环境下获取当前路径的方法
关键字: java在不同环境下获取当前路径的方法
1. 在Servlet\Filter等Servlet web环境中,只要获得javax.servlet.ServletContext类型,则可以通过 getRealPath("...") 获得路径。相对路径中最顶层目录可通过参数“"/"”获取。
request.getSession().getServletContext() ......

JAVA得到网卡物理地址(windows和Linux)

在我们在写程序的过程中,有些时候需要知道一些电脑的硬件信息,比如我们写一些需要注册的程序的时候,就需要得到某个电脑特定的信息,一般来说,网卡的物理地址是不会重复的,我们正好可以用它来做为我们识别一台电脑的标志.那如何得到网卡的物理地址呢?我们可以借助于ProcessBuilder这个类,这个类是JDK1.5新加的,以前也可以用Ru ......

java 读写文件(I/O)

一、多种方式读文件内容。
1、按字节读取文件内容
2、按字符读取文件内容
3、按行读取文件内容
4、随机读取文件内容
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
imp ......

提取网页的图片链接的Java程序

输入网页文件名,和资源列表文件名
输出资源列表文件供迅雷下载。
适用于批量下载图片。
由两个文件组成。
没有提供网页下载功能,因为我没有时间写,相关的代码以后再贴。
 1
//
AnalizeIMG.java
 2
 3
//
主程序
 4
 5
import
 java.io.BufferedReader;
 6
import
......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号