Java程序(角谷猜想,applet)_第1頁
Java程序(角谷猜想,applet)_第2頁
Java程序(角谷猜想,applet)_第3頁
Java程序(角谷猜想,applet)_第4頁
Java程序(角谷猜想,applet)_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Java實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)題目:1. 角谷猜想:任何一個(gè)正整數(shù)n,如果它是偶數(shù)則除以2,如果是奇數(shù)則乘以3再加上1,這樣得到一個(gè)新整數(shù),如此繼續(xù)進(jìn)行上述處理,則最后得到的數(shù)一定是1。證明:在3-10000之間的所有正整數(shù)都符合上述規(guī)則。判斷X為奇數(shù)x*3+1輸入一個(gè)數(shù)判斷開始X為偶數(shù)x/2X為1X不為1滿足猜想不滿足結(jié)束流程圖:分析步驟:step1:開始。step2:取一個(gè)在3-10000之間的數(shù)。step3:判斷它是奇數(shù)或是偶數(shù)。step4:為奇數(shù),則乘以3加1;為偶數(shù),則除以2;形成一個(gè)新的數(shù)。step5:將step3重復(fù)循環(huán)知道數(shù)變?yōu)?。step6:結(jié)束,猜想得證。代碼:public clas

2、s Program1 public static void main(String args) int x;int i;for(i=3;i<10000;i+) x=i;while( x>1 ) / System.out.println("x= "+x+" i="+i);if (x%2=0)x/=2;else if(x%2=1) x=x*3+1; if(x!=1) System.out.println("haven't meet conditions X= " +x); /* else System.out.prin

3、tln(" meet conditions X= " +x); */ /end for System.out.println("No error! The thought is correct"); 小應(yīng)用程序代碼:package javaapplication1;import java.awt.*;import java.applet.Applet;public class NewApplet extends Applet Label lab1;TextField input1;int x;public void init() lab1=new Lab

4、el("輸入一個(gè)大于3小于10000的整數(shù)");input1=new TextField(10);add(lab1);add(input1); public boolean action (Event e, Object o) x=Integer.parseInt(input1.getText();while( x>1 ) / System.out.println("x= "+x+" i="+i);if (x%2=0)x/=2;else if(x%2=1) x=x*3+1; if(x=1) showStatus("me

5、et conditions X最終= " +x); return true; 結(jié)果顯示:小應(yīng)用程序結(jié)果顯示:2. 編寫一個(gè)小程序,要求輸入兩個(gè)整數(shù),在狀態(tài)條顯示較大的數(shù),緊跟著顯示“is larger”,若二者相同,則顯示“two numbers are equal”。a<ba>b輸入a,b兩數(shù)判斷大小開始a is largerb is largertwo numbersare equal結(jié)束流程圖:a=b分析步驟:step1:開始。step2:選取兩個(gè)數(shù)a,b。step3:比較a,b的大小。step4:若a>b,則顯示"a is larger"

6、若a=b,則顯示"two numbers are equal"若a<b,則顯示"b is larger"。step5:結(jié)束代碼:package p32t5;import java.awt.*;import java.applet.Applet;public class proApp extends Applet Label lab1,lab2;TextField input1,input2;int num1,num2;public void init () lab1=new Label("輸入整數(shù)1"); input1=new

7、TextField(10); lab2=new Label("輸入整數(shù)2"); input2=new TextField(10); add(lab1);add(input1);add(lab2);add(input2); /end initpublic boolean action (Event e, Object o) if (e.target=input1|e.target=input2) num1=Integer.parseInt(input1.getText(); num2=Integer.parseInt(input2.getText();if(num1<n

8、um2)showStatus(num2 +"is larger!");else if (num1>num2)showStatus(num1 +"is larger!");else showStatus("The two numbers are equal!"); /end if return true; /end action 結(jié)果顯示:心得與體會(huì):本次編程,我體會(huì)到了很多與之前c+,C語言不同的地方。java中首先要定義類,類是面向程序設(shè)計(jì)的基礎(chǔ),始終圍繞對(duì)象展開討論。而C語言是結(jié)構(gòu)化程序設(shè)計(jì):C語言解決一個(gè)問題時(shí),先設(shè)計(jì)算法

9、,然后建立什么樣的數(shù)據(jù)結(jié)構(gòu)才能使操作更為簡(jiǎn)便。而Java面對(duì)對(duì)象編程恰好與之相反:先建立數(shù)據(jù)結(jié)構(gòu),再考慮如何操作這些數(shù)據(jù)。并且C語言是以函數(shù)為編程單元集中在編寫函數(shù)上。而java是以類為編程單元,集中在類的設(shè)計(jì)上。本次實(shí)驗(yàn),題目并不是太難,我目前還只能用系統(tǒng)提供的類進(jìn)行操作。在算法方面,和C語言幾乎差不多,包括簡(jiǎn)單數(shù)據(jù)類型,簡(jiǎn)單用語。在編寫第一題的時(shí)候,一開始因?yàn)樽兞可俣x了一個(gè)導(dǎo)致運(yùn)行結(jié)果一直不對(duì),后來老師提議在每一步可以加一行測(cè)試代碼,可以有效的查找自己的錯(cuò)誤,不至于盲目的對(duì)著大篇代碼發(fā)愁。而后編寫第一題和第二題的小應(yīng)用程序,主體算法部分都是簡(jiǎn)單的類似C語言的小程序,主要搞清楚applet的用法,不似在主類中之間進(jìn)行編譯。需要自己設(shè)立類來顯示文本框以及輸入數(shù)字。以及用到了方法的重載,這一部分理論還不是太理解,需要在加以深入,包括public void init ,public

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論