java模擬科學(xué)計算器課程設(shè)計_第1頁
java模擬科學(xué)計算器課程設(shè)計_第2頁
java模擬科學(xué)計算器課程設(shè)計_第3頁
java模擬科學(xué)計算器課程設(shè)計_第4頁
java模擬科學(xué)計算器課程設(shè)計_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、軟 件 學(xué) 院課程設(shè)計報告書課程名稱 Java 6程序設(shè)計 設(shè)計題目 模擬科學(xué)計算器 專業(yè)班級 學(xué) 號 姓 名 指導(dǎo)教師 2013 年 6 月目錄1設(shè)計時間32設(shè)計目的33設(shè)計任務(wù)34設(shè)計內(nèi)容34.1需求分析34.1.1問題描述34.1.2基本要求34.2總體設(shè)計34.2.1 包的描述34.2.2 類的描述44.2.3類之間的關(guān)系44.3詳細(xì)設(shè)計44.3.1類圖44.3.2頁面設(shè)計44.4測試與分析54.5 程序代碼65總結(jié)與展望18參考文獻(xiàn)19課程設(shè)計成績評定191 設(shè)計時間2013/6/10-2013/6/162 設(shè)計目的其目的在于通過實(shí)踐加深對面向?qū)ο蟪绦蛟O(shè)計的理論、方法和基礎(chǔ)知識的理解

2、,掌握使用Java語言進(jìn)行面向?qū)ο笤O(shè)計的基本方法,提高運(yùn)用面向?qū)ο笾R分析實(shí)際問題、解決實(shí)際問題的能力,提高應(yīng)用能力。3設(shè)計任務(wù)界面模擬Windows中的計算器程序。實(shí)現(xiàn)基本數(shù)學(xué)運(yùn)算、函數(shù)等功能:加、減、乘、除、階乘、正弦、余弦和指數(shù)運(yùn)算。添加相關(guān)組件并進(jìn)行按鈕事件處理。4 設(shè)計內(nèi)容 4.1需求分析4.1.1問題描述 日常生活中經(jīng)常需要用到計算器,比如科學(xué)計算、數(shù)值計算、會計業(yè)務(wù)等,在Applet中實(shí)現(xiàn)一個精巧實(shí)用的計算器,可以讓用戶在使用網(wǎng)站服務(wù)的同時,可以很方便的驚醒數(shù)據(jù)運(yùn)算,可增加頁面的實(shí)用性,同時讓用戶的操作也更加方便月快捷。4.1.2基本要求本項目需要實(shí)現(xiàn)一個具有四則運(yùn)算的計算器,擁

3、有加,減,乘,除功能。除此之外,本次設(shè)計的程序添加了階乘、正弦、余弦和指數(shù)運(yùn)算功能。4.2總體設(shè)計4.2.1 包的描述import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.math.*;4.2.2 類的描述只用了一個Calculator類里邊包含程序入口 main函數(shù),Calculator()構(gòu)造函數(shù)完成對各個組件的定義和初始化,myEvent()完成事件監(jiān)聽的各種功能。4.2.3類之間的關(guān)系Calculator類集中完成各項功能4.3詳細(xì)設(shè)計4.3.1類圖 圖4.3.1-1 myeclipse自動

4、生成類圖4.3.2頁面設(shè)計圖4.3.2-1 計算機(jī)完成界面4.4測試與分析圖4.4-1 運(yùn)行成功圖4.4-2 7*8運(yùn)行結(jié)果 圖4.4-3 12/4運(yùn)行結(jié)果 圖4.4-4 88/0運(yùn)行結(jié)果圖4.4-5 78-4運(yùn)行結(jié)果圖4.4-6 45+65運(yùn)行結(jié)果圖4.4-7 53運(yùn)行結(jié)果圖4.4-8 5!運(yùn)行結(jié)果圖4.4-9 Sin 90運(yùn)行結(jié)果4.5程序代碼import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.math.*;class CalculatorGridLayout l1;GridLayout l2

5、;BorderLayout l3;Frame f;Panel p1,p2;JTextField t1;TextField t2;JButton b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20;StringBuffer str;double x, y;int z;static double m;public Calculator()f = new Frame(計算器);f.setBounds(300,100,600,500);l1 = new GridLayout(

6、1,5, 5, 5);l2 = new GridLayout(4,5,5,5);l3 = new BorderLayout();p1 = new Panel();p2 = new Panel();t1 = new JTextField(27);t1.setHorizontalAlignment(JTextField.RIGHT);t1.setEnabled(true);t1.setText(0);t2 = new TextField();t2.setEnabled(false);b1 = new JButton(7);b1.setForeground(Color.black);b2 = new

7、 JButton(8);b2.setForeground(Color.black);b3 = new JButton(9);b3.setForeground(Color.black);b4 = new JButton(/);b4.setForeground(Color.blue);b5 = new JButton(x!);b5.setForeground(Color.blue);b6 = new JButton(4);b6.setForeground(Color.black);b7 = new JButton(5);b7.setForeground(Color.black);b8 = new

8、JButton(6);b8.setForeground(Color.black);b9 = new JButton(*);b9.setForeground(Color.blue);b10 = new JButton(xy);b10.setForeground(Color.blue);b11 = new JButton(1);b11.setForeground(Color.black);b12 = new JButton(2);b12.setForeground(Color.black);b13 = new JButton(3);b13.setForeground(Color.black);b1

9、4 = new JButton(-);b14.setForeground(Color.blue);b15 = new JButton(C);b15.setForeground(Color.red);b16 = new JButton(0);b16.setForeground(Color.black);b17 = new JButton(sin);b17.setForeground(Color.pink);b18 = new JButton(cos);b18.setForeground(Color.pink);b19 = new JButton(+);b19.setForeground(Colo

10、r.blue);b20 = new JButton(=);b20.setForeground(Color.green);str = new StringBuffer();p1.add(t1);p1.setBounds(10,25,300,45);p1.setLayout(l1);p2.setLayout(l2);p2.add(b1);p2.add(b2);p2.add(b3);p2.add(b4);p2.add(b5);p2.add(b6);p2.add(b7);p2.add(b8);p2.add(b9);p2.add(b10);p2.add(b11);p2.add(b12);p2.add(b

11、13);p2.add(b14);p2.add(b15);p2.add(b16);p2.add(b17);p2.add(b18);p2.add(b19);p2.add(b20);p2.setBounds(10,65,300,30);f.setTitle(計算器);f.setResizable(false);f.setBackground(new Color(200,200,100);f.setBounds(100, 100, 420, 250);f.setLayout(l3);f.add(BorderLayout.NORTH, p1);f.add(BorderLayout.CENTER, p2)

12、;myEvent();f.setVisible(true);private void myEvent() f.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e0) System.exit(0); ); try b1.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e1) t1.setText(str.append(7).toString(); y=Double.parseDouble(t1.ge

13、tText().trim(); ) ; b2.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e2) t1.setText(str.append(8).toString(); y=Double.parseDouble(t1.getText().trim(); ) ; b3.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e3) t1.setText(str.append(9).toString(); y=

14、Double.parseDouble(t1.getText().trim(); ) ; b6.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e6) t1.setText(str.append(4).toString(); y=Double.parseDouble(t1.getText().trim(); ) ; b7.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e7) t1.setText(str.

15、append(5).toString(); y=Double.parseDouble(t1.getText().trim(); ) ; b8.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e8) t1.setText(str.append(6).toString(); y=Double.parseDouble(t1.getText().trim(); ) ; b11.addMouseListener(new MouseAdapter() public void mouseClicked(Mouse

16、Event e11) t1.setText(str.append(1).toString(); y=Double.parseDouble(t1.getText().trim(); ) ; b12.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e12) t1.setText(str.append(2).toString(); y=Double.parseDouble(t1.getText().trim(); ) ; b13.addMouseListener(new MouseAdapter() pu

17、blic void mouseClicked(MouseEvent e13) t1.setText(str.append(3).toString(); y=Double.parseDouble(t1.getText().trim(); ) ; b16.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e16) t1.setText(str.append(0).toString(); y=Double.parseDouble(t1.getText().trim(); ) ; b15.addMouseLi

18、stener(new MouseAdapter() public void mouseClicked(MouseEvent e15) t1.setText(0); str.setLength(0); ) ; b19.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e19) x=Double.parseDouble(t1.getText().trim(); str.setLength(0); y=0d; z=0; ) ; b14.addMouseListener(new MouseAdapter()

19、public void mouseClicked(MouseEvent e14) x=Double.parseDouble(t1.getText().trim(); str.setLength(0); y=0d; z=1; ) ; b9.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e9) x=Double.parseDouble(t1.getText().trim(); str.setLength(0); y=0d; z=2; ) ; b4.addMouseListener(new MouseA

20、dapter() public void mouseClicked(MouseEvent e4) x=Double.parseDouble(t1.getText().trim(); str.setLength(0); y=0d; z=3; ) ; b5.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e5) x=Integer.parseInt(t1.getText(); int sum=1; for(int i=1;i=x;i+) sum*=i; x=sum; y=0d; z=0; ) ; b10

21、.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e10) x=Integer.parseInt(t1.getText(); str.setLength(0); t1.setText( ); y=0d; z=4; ) ; b17.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e17) x=Integer.parseInt(t1.getText(); x=Math.round(Math.sin(x); y

22、=0d; z=0; ) ; b18.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e18) x=Integer.parseInt(t1.getText(); x=Math.round(Math.cos(x); y=0d; z=0; ) ; b20.addMouseListener(new MouseAdapter() public void mouseClicked(MouseEvent e20) str.setLength(0); switch(z) case 0 : t1.setText(+(x+y);break; case 1 : t1.setText(+(x-y);break; case 2 : t1.setText(+(x*y);break; case 3 : t1.setText(+(x/y);br

溫馨提示

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

評論

0/150

提交評論