這道題目考察的是運用遞歸(數列)的思路去解決問題。
創新互聯是專業的田陽網站建設公司,田陽接單;提供成都網站設計、網站制作,網頁設計,網站設計,建網站,PHP網站建設等專業做網站服務;采用PHP框架,可快速的進行田陽網站開發網頁制作和功能擴展;專業做搜索引擎喜愛的網站,專業的做網站團隊,希望更多企業前來合作!
假設到第24個月,示例代碼如下:
public class woo {
public static void main(String args[]) {
System.out.println(fib(24));
}
private static int fib(int n) {
if (n == 1 || n == 2) {
return 1;
} else {
return fib(n - 1) + fib(n - 2);
}
}
}
擴展資料:
斐波那契數列(Fibonacci sequence),又稱黃金分割數列、因數學家列昂納多·斐波那契(Leonardoda Fibonacci)以兔子繁殖為例子而引入,故又稱為“兔子數列”,指的是這樣一個數列:1、1、2、3、5、8、13、21、34、……。
在數學上,斐波納契數列以如下被以遞推的方法定義:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)在現代物理、準晶體結構、化學等領域,斐波納契數列都有直接的應用,為此,美國數學會從1963年起出版了以《斐波納契數列季刊》為名的一份數學雜志,用于專門刊載這方面的研究成果。
參考資料:
百度百科:斐波那契數列
百度百科:遞歸函數
您好,提問者:
1、這個是利用線程訪問http網頁。
2、Runnable是線程的接口,必須實現這接口里面的run方法。
3、構造方法是傳htttp地址的,這個就不用說了吧。
4、URL 這個類是設置url地址的。
5、HttpURLConnection conn 是訪問http地址,openConnection方法開始訪問。
6、InputStream輸入流,try是異常處理模塊,finally是用于關閉資源。
例如:new Thread(new ControlThrea("")).start();運行run方法里面的東西
先看下最終的結果吧,是不是你想要的?
項目結構如下圖所示:
其中,Student是父類,PostGraduate是子類,繼承自父類Student,Main是主類,用于創建對象以及把這些對象的功能調用起來。
---------------------------Student代碼如下:------------------------------
/**
* 學生類
* @author 逍遙
*
*/
public class Student {
//學號
private int sId;
//姓名
private String sName;
//數學成績
private double mathScore;
//計算機成績
private double computerScore;
/**
* 獲取學號
* @return
*/
public int getsId() {
return sId;
}
/**
* 設置學號
* @param sId
*/
public void setsId(int sId) {
this.sId = sId;
}
/**
* 獲取姓名
* @return
*/
public String getsName() {
return sName;
}
/**
* 設置姓名
* @param sName
*/
public void setsName(String sName) {
this.sName = sName;
}
/**
* 獲取數學成績
* @return
*/
public double getMathScore() {
return mathScore;
}
/**
* 設置數學成績
* @param mathScore
*/
public void setMathScore(double mathScore) {
this.mathScore = mathScore;
}
/**
* 獲取計算機成績
* @return
*/
public double getComputerScore() {
return computerScore;
}
/**
* 設置計算機成績
* @param computerScore
*/
public void setComputerScore(double computerScore) {
this.computerScore = computerScore;
}
/**
* 輸出成員變量(4個成員變量)的信息。
*/
public void print(){
System.out.println("學號:"+sId);
System.out.println("姓名:"+sName);
System.out.println("計算機成績:"+mathScore);
System.out.println("數學成績:"+computerScore);
}
}
---------------------------Student代碼結束------------------------------
---------------------------PostGraduate代碼如下:------------------------------
/**
* 研究生類
* @author 逍遙
*
*/
public class PostGraduate extends Student{
//導師姓名
private String tName;
//研究方向
private String ResearchDirection;
/**
* 獲取導師姓名
* @return
*/
public String gettName() {
return tName;
}
/**
* 設置導師姓名
* @param tName
*/
public void settName(String tName) {
this.tName = tName;
}
/**
* 獲取研究方向
* @return
*/
public String getResearchDirection() {
return ResearchDirection;
}
/**
* 設置研究方向
* @param researchDirection
*/
public void setResearchDirection(String researchDirection) {
ResearchDirection = researchDirection;
}
/**
* 研究生類重寫父類的void print()方法,功能是輸出成員變量(6個成員變量)的信息
*/
@Override
public void print() {
// TODO Auto-generated method stub
super.print();
System.out.println("導師姓名:"+tName);
System.out.println("研究方向:"+ResearchDirection);
}
}
---------------------------PostGraduate代碼結束------------------------------
---------------------------Main代碼如下:------------------------------
import java.util.Scanner;
/**
* 主類
* @author 逍遙
*
*/
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
//用于獲取從鍵盤上輸入的信息
Scanner input=new Scanner(System.in);
//創建一個Student類的對象
Student student=new Student();
//從鍵盤上輸入其屬性信息
System.out.print("請輸入學生的學號:");
student.setsId(input.nextInt());
System.out.print("請輸入學生的姓名:");
student.setsName(input.next());
System.out.print("請輸入學生的數學成績:");
student.setMathScore(input.nextDouble());
System.out.print("請輸入學生的計算機成績:");
student.setComputerScore(input.nextDouble());
//并且通過其print方法輸出這些信息;
student.print();
//創建一個PostGraduate類的對象
PostGraduate postGraduate=new PostGraduate();
//從鍵盤上輸入其屬性信息
System.out.print("請輸入研究生的學號:");
postGraduate.setsId(input.nextInt());
System.out.print("請輸入研究生的姓名:");
postGraduate.setsName(input.next());
System.out.print("請輸入研究生的數學成績:");
postGraduate.setMathScore(input.nextDouble());
System.out.print("請輸入研究生的計算機成績:");
postGraduate.setComputerScore(input.nextDouble());
System.out.print("請輸入研究生的導師姓名:");
postGraduate.settName(input.next());
System.out.print("請輸入研究生的研究方向:");
postGraduate.setResearchDirection(input.next());
//并且通過其print方法輸出這些信息。
postGraduate.print();
}
}
---------------------------Main代碼結束------------------------------
=================知識點的簡單總結=================
本題考察的知識點是面向對象的三大特性之一:繼承。
Student為父類,包含了學號、姓名、數學成績和計算機成績4個屬性,以及一個print()方法。
PostGraduate 繼承父類的時候,繼承了父類中的所有方法,因為方法我都是用的public,而屬性繼承不了,因為我在父類中用了封裝,所有屬性都用private修飾了,想訪問屬性的話,必須通過get、set方法,這里,我重寫了父類中的print方法,通過super.print();調用了父類中的print()方法。
最后就是Main類,提供了main方法作為入口函數,用于按要求聲明這些對象以及去調用對象中的方法。
(a)It is insert sort algorithm of the above code segment.上面的代碼是插入排序算法
(b)
EXAMPLE
AEXMPLE
AEMXPLE
AEMPXLE
AELMPXE
AEELMPX
(c)
Require 6 sorting steps.
補充完整的插入排序算法的Java程序如下
public class A{
public static void main(String[] args){
char[] a={'E','X','A','M','P','L','E'};
char v;
int i,j,n=a.length,count=0;
for (i =1; i n; i++){
v = a[i];
j = i;
while(j 0 a[j-1] v) {
a[j] = a[j-1];
j--;
}
a[j] = v;
count++;
System.out.println(new String(a));
}
System.out.println("Require "+count+" sorting steps.");
}
}
名稱欄目:java編程的代碼講解 java編程的代碼講解教程
URL標題:http://vcdvsql.cn/article8/doodeip.html
成都網站建設公司_創新互聯,為您提供網站導航、響應式網站、、營銷型網站建設、虛擬主機、軟件開發
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯