2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  課程設(shè)計(jì)報(bào)告</b></p><p>  ( Java程序設(shè)計(jì) )</p><p>  設(shè)計(jì)題目 方程求根 </p><p>  年級(jí)專(zhuān)業(yè) 2010級(jí)計(jì)算機(jī)科學(xué)與技術(shù) </p><p>  學(xué)生姓名 <

2、;/p><p>  指導(dǎo)老師 </p><p>  2012年01月 </p><p>  Java程序設(shè)計(jì)課程設(shè)計(jì)任務(wù)書(shū)</p><p>  計(jì)算機(jī)與信息工程 院系 計(jì)算機(jī)科學(xué)與技術(shù) 教研室</p><p>  2011年 12 月 1 日&

3、lt;/p><p><b>  目錄</b></p><p>  一、概要設(shè)計(jì)························

4、3;··················4-5</p><p><b>  1、設(shè)計(jì)內(nèi)容</b></p><p><b>  2、程序流程圖</b></p>

5、<p>  二、詳細(xì)設(shè)計(jì)·································

6、83;·········6-10</p><p><b>  1、Java類(lèi)清單</b></p><p><b>  2、程序代碼</b></p><p>  三、運(yùn)行結(jié)果·····&

7、#183;···································11-12

8、</p><p>  1、不是一元二次方程</p><p><b>  2、沒(méi)有實(shí)根</b></p><p><b>  3、有實(shí)根</b></p><p>  四、總結(jié)報(bào)告··········

9、83;································12</p><p>  

10、五、參考文獻(xiàn)···································

11、3;·······12</p><p><b>  概要設(shè)計(jì)</b></p><p><b>  1、設(shè)計(jì)內(nèi)容</b></p><p>  首先編寫(xiě)一個(gè)封裝一元二次方程的類(lèi),然后再編寫(xiě)一個(gè)窗口。要求窗口使用三個(gè)文本框和一個(gè)文本區(qū),為方程對(duì)象中的數(shù)據(jù)提供視

12、圖,其中三個(gè)文本框用來(lái)顯示和更新方程對(duì)象的系數(shù);文本區(qū)對(duì)象用來(lái)顯示方程的根。窗口中有一個(gè)按鈕,用戶(hù)單擊該按鈕后,程序用文本框中的數(shù)據(jù)修改方程的系數(shù),并將方程的根顯示在文本區(qū)中。</p><p><b>  2、程序流程圖</b></p><p><b>  詳細(xì)設(shè)計(jì)</b></p><p><b>  1、Jav

13、a類(lèi)清單</b></p><p>  本設(shè)計(jì)由3個(gè)類(lèi)構(gòu)成。三個(gè)類(lèi)如表一(Java類(lèi)清單)所示:</p><p>  表一. Java類(lèi)清單</p><p><b>  2、程序代碼</b></p><p>  名稱(chēng):一元二次方程求根</p><p>  時(shí)間:2012年1月6日<

14、;/p><p><b>  /*</b></p><p>  * SquareEquation.Java</p><p><b>  *</b></p><p><b>  * 開(kāi)發(fā)者:董雪</b></p><p><b>  *</b&

15、gt;</p><p>  * 簡(jiǎn)介:封裝一元二次方程</p><p><b>  *</b></p><p><b>  */</b></p><p>  public class SquareEquation </p><p><b>  { </b

16、></p><p>  double a,b,c;</p><p>  double root1,root2;</p><p>  public void setA(double a)</p><p><b>  { </b></p><p><b>  this.a=a;<

17、/b></p><p><b>  }</b></p><p>  public void setB(double b)</p><p><b>  { </b></p><p><b>  this.b=b;</b></p><p><b&

18、gt;  }</b></p><p>  public void setC(double c)</p><p><b>  { </b></p><p><b>  this.c=c;</b></p><p><b>  }</b></p><p

19、>  Public double getRootOne() throws NoRealRootException,NoSquareEquationException</p><p><b>  { </b></p><p><b>  if(a!=0)</b></p><p><b>  { <

20、;/b></p><p>  double disk=b*b-4*a*c;</p><p>  if(disk>=0)</p><p><b>  { </b></p><p>  root1=(-b+Math.sqrt(disk))/(2*a);</p><p><b> 

21、 } </b></p><p><b>  else</b></p><p><b>  { </b></p><p>  throw new NoRealRootException("沒(méi)有實(shí)根"); </p><p><b>  }</b>&l

22、t;/p><p><b>  }</b></p><p><b>  else</b></p><p><b>  {</b></p><p>  throw new NoRealRootException("不是二次方程"); </p><

23、p><b>  }</b></p><p>  return root1;</p><p><b>  } </b></p><p>  public double getRootTwo() throws NoRealRootException,NoSquareEquationException</p>

24、<p><b>  { </b></p><p><b>  if(a!=0)</b></p><p><b>  { </b></p><p>  double disk=b*b-4*a*c;</p><p>  if(disk>=0)</p&

25、gt;<p><b>  { </b></p><p>  root2=(-b-Math.sqrt(disk))/(2*a);</p><p><b>  } </b></p><p><b>  else</b></p><p><b>  { &l

26、t;/b></p><p>  throw new NoRealRootException("沒(méi)有實(shí)根"); </p><p><b>  }</b></p><p><b>  }</b></p><p><b>  else</b></p&g

27、t;<p><b>  {</b></p><p>  throw new NoRealRootException("不是二次方程"); </p><p><b>  }</b></p><p>  return root2;</p><p><b>  

28、} </b></p><p><b>  }</b></p><p>  class NoRealRootException extends Exception</p><p><b>  { </b></p><p>  String message;</p><

29、p>  NoRealRootException(String s)</p><p><b>  { </b></p><p>  message=s;</p><p><b>  }</b></p><p>  public String getMessage()</p>&

30、lt;p><b>  { </b></p><p>  return message;</p><p><b>  }</b></p><p><b>  }</b></p><p>  class NoSquareEquationException extends

31、Exception</p><p><b>  { </b></p><p>  String message;</p><p>  NoSquareEquationException(String s)</p><p><b>  { </b></p><p>  m

32、essage=s;</p><p><b>  }</b></p><p>  public String getMessage()</p><p><b>  { </b></p><p>  return message;</p><p><b>  }&l

33、t;/b></p><p><b>  }</b></p><p><b>  /*</b></p><p>  * EquationFrame.java</p><p><b>  *</b></p><p><b>  * 開(kāi)發(fā)者

34、:董雪</b></p><p><b>  *</b></p><p>  * 簡(jiǎn)介:計(jì)算器的圖形界面</p><p><b>  *</b></p><p><b>  */</b></p><p>  import java.awt.*

35、;</p><p>  import java.awt.event.*;</p><p>  public class EquationFrame extends Frame implements ActionListener</p><p><b>  { </b></p><p>  SquareEquation

36、equation; //聲明變量</p><p>  TextField textA,textB,textC; </p><p>  TextArea showRoots; </p><p>  Button controlButton; //聲明變量</p><p>  public Equation

37、Frame()</p><p><b>  { </b></p><p>  equation=new SquareEquation(); //創(chuàng)建對(duì)象</p><p>  textA=new TextField(8); </p><p>  textB=new TextField(8);

38、 </p><p>  textC=new TextField(8);</p><p>  showRoots=new TextArea();</p><p>  controlButton=new Button("確定");</p><p>  Panel pNorth=new Panel(); //創(chuàng)建

39、對(duì)象</p><p>  pNorth.add(new Label("二次項(xiàng)系數(shù):")); //添加標(biāo)簽到面板</p><p>  pNorth.add(textA); //添加文本框到面板</p><p>  pNorth.add(new Label("一次項(xiàng)系數(shù):"));</

40、p><p>  pNorth.add(textB);</p><p>  pNorth.add(new Label("常數(shù)項(xiàng)系數(shù):"));</p><p>  pNorth.add(textC); </p><p>  pNorth.add(controlButton); //添加按鈕到面板</p&

41、gt;<p>  controlButton.addActionListener(this);; //當(dāng)前窗口作為controlButton的ActionEvent事件的監(jiān)視器</p><p>  add(pNorth,BorderLayout.NORTH);//設(shè)置面板的布局方式為邊界布局</p><p>  add(showRoots,BorderLayout.CE

42、NTER);</p><p>  setBounds(100,100,630,160); //設(shè)置邊框大小</p><p>  setVisible(true);//設(shè)置可見(jiàn)</p><p>  validate();</p><p>  addWindowListener(new WindowAdapter() //

43、內(nèi)部類(lèi):窗口適配器</p><p><b>  { </b></p><p>  public void windowClosing(WindowEvent e)</p><p><b>  { </b></p><p>  System.exit(0); //關(guān)閉窗口</p&g

44、t;<p><b>  }</b></p><p><b>  }</b></p><p><b>  );</b></p><p><b>  }</b></p><p>  public void actionPerformed(Acti

45、onEvent e)</p><p><b>  { </b></p><p>  try{//異常處理</p><p>  double a=Double.parseDouble(textA.getText()); //textA調(diào)用方法獲取其中的文本</p><p>  double b=Double.

46、parseDouble(textB.getText()); //textB調(diào)用方法獲取其中的文本 </p><p>  double c=Double.parseDouble(textC.getText()); // textC調(diào)用方法獲取其中的文本</p><p>  equation.setA(a);//調(diào)用賦值</p><p>  e

47、quation.setB(b);</p><p>  equation.setC(c);</p><p>  textA.setText(""+a);</p><p>  textB.setText(""+b);</p><p>  textC.setText(""+c);</

48、p><p>  showRoots.append("\n 根:"+equation.getRootOne());</p><p>  showRoots.append("\n 根:"+equation.getRootTwo()); </p><p><b>  } </b></p><

49、p>  catch(Exception ex)</p><p>  { showRoots.append("\n"+ex+"\n");</p><p><b>  }</b></p><p><b>  }</b></p><p><b> 

50、 }</b></p><p><b>  /*</b></p><p>  * EquationMainClass.java</p><p><b>  *</b></p><p><b>  * 開(kāi)發(fā)者:董雪</b></p><p>&l

51、t;b>  *</b></p><p>  * 簡(jiǎn)介:計(jì)算器的主類(lèi)</p><p><b>  *</b></p><p><b>  */</b></p><p>  public class EquationMainClass</p><p>  {

52、public static void main(String args[])</p><p>  { EquationFrame frame=new EquationFrame();</p><p><b>  }</b></p><p><b>  }</b></p><p><b>

53、;  運(yùn)行結(jié)果</b></p><p>  1、不是一元二次方程:當(dāng)a=0時(shí),運(yùn)行結(jié)果如圖一所示。</p><p>  圖一. “不是一元二次方程”界面</p><p>  2、沒(méi)有實(shí)根:當(dāng)a!=0,disk=b*b-4*a*c<0時(shí),運(yùn)行結(jié)果如圖二所示。</p><p>  圖二. “沒(méi)有實(shí)根”界面</p>

54、<p><b>  3、有實(shí)根</b></p><p>  (1)、當(dāng)a!=0,disk=0時(shí),只有一個(gè)二重根,運(yùn)行結(jié)果如圖三所示。</p><p>  圖三. “一個(gè)二重根”界面</p><p> ?。?)、當(dāng)a!=0,disk>0時(shí),有兩個(gè)實(shí)根,運(yùn)行結(jié)果如圖四所示。</p><p>  圖四.

55、“兩個(gè)不同實(shí)根”界面</p><p><b>  四、總結(jié)報(bào)告</b></p><p>  Java程序設(shè)計(jì)是一門(mén)博大精深的課程,我們只上了一學(xué)期的Java課,盡管時(shí)間有限,但是Java中的知識(shí)是值得我們花費(fèi)更多的時(shí)間去學(xué)習(xí)的。通過(guò)這次的課程設(shè)計(jì),讓我真正明白了實(shí)踐在理工科學(xué)習(xí)中的重要性。也許只是一個(gè)初級(jí)基礎(chǔ)的小程序,但也運(yùn)用到了很多知識(shí)點(diǎn)。在Java中,整體思想也很

56、重要,每個(gè)部分怎么安排,都需要我們?nèi)プ屑?xì)思考后用最簡(jiǎn)潔明了的方式把他們表現(xiàn)出來(lái)。以后繼續(xù)學(xué)習(xí)……</p><p><b>  五、參考文獻(xiàn)</b></p><p>  《Java程序設(shè)計(jì)教程(第二版)》-----雍俊海</p><p>  《Java2 實(shí)用教程(第三版)·實(shí)驗(yàn)指導(dǎo)與習(xí)題解答》----耿祥義 張躍平</p>

溫馨提示

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

評(píng)論

0/150

提交評(píng)論