版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、軟 件 學 院課程設計報告書課程名稱 Java 6程序設計 設計題目 模擬科學計算器 專業(yè)班級 學 號 姓 名 指導教師 2013 年 6 月目錄1設計時間32設計目的33設計任務34設計內(nèi)容34.1需求分析34.1.1問題描述34.1.2基本要求34.2總體設計34.2.1 包的描述34.2.2 類的描述44.2.3類之間的關系44.3詳細設計44.3.1類圖44.3.2頁面設計44.4測試與分析54.5 程序代碼65總結與展望18參考文獻19課程設計成績評定191 設計時間2013/6/10-2013/6/162 設計目的其目的在于通過實踐加深對面向對象程序設計的理論、方法和基礎知識的理解
2、,掌握使用Java語言進行面向對象設計的基本方法,提高運用面向對象知識分析實際問題、解決實際問題的能力,提高應用能力。3設計任務界面模擬Windows中的計算器程序。實現(xiàn)基本數(shù)學運算、函數(shù)等功能:加、減、乘、除、階乘、正弦、余弦和指數(shù)運算。添加相關組件并進行按鈕事件處理。4 設計內(nèi)容 4.1需求分析4.1.1問題描述 日常生活中經(jīng)常需要用到計算器,比如科學計算、數(shù)值計算、會計業(yè)務等,在Applet中實現(xiàn)一個精巧實用的計算器,可以讓用戶在使用網(wǎng)站服務的同時,可以很方便的驚醒數(shù)據(jù)運算,可增加頁面的實用性,同時讓用戶的操作也更加方便月快捷。4.1.2基本要求本項目需要實現(xiàn)一個具有四則運算的計算器,擁
3、有加,減,乘,除功能。除此之外,本次設計的程序添加了階乘、正弦、余弦和指數(shù)運算功能。4.2總體設計4.2.1 包的描述import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.math.*;4.2.2 類的描述只用了一個Calculator類里邊包含程序入口 main函數(shù),Calculator()構造函數(shù)完成對各個組件的定義和初始化,myEvent()完成事件監(jiān)聽的各種功能。4.2.3類之間的關系Calculator類集中完成各項功能4.3詳細設計4.3.1類圖 圖4.3.1-1 myeclipse自動
4、生成類圖4.3.2頁面設計圖4.3.2-1 計算機完成界面4.4測試與分析圖4.4-1 運行成功圖4.4-2 7*8運行結果 圖4.4-3 12/4運行結果 圖4.4-4 88/0運行結果圖4.4-5 78-4運行結果圖4.4-6 45+65運行結果圖4.4-7 53運行結果圖4.4-8 5!運行結果圖4.4-9 Sin 90運行結果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)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度廠房電氣系統(tǒng)升級改造合同范本4篇
- 2024新版二手房定金支付合同樣本版
- 二零二五年度新材料研發(fā)承包生產(chǎn)合同3篇
- 二零二四屬公積金貸款合同簽訂后的貸后審計與合規(guī)性檢查3篇
- 2024預定房屋買賣協(xié)議書
- 個人農(nóng)田租賃承包協(xié)議:2024年標準范本一
- 2024年04月江西九江銀行萍鄉(xiāng)分行社會招考筆試歷年參考題庫附帶答案詳解
- 2024年04月四川興業(yè)銀行瀘州分行招考筆試歷年參考題庫附帶答案詳解
- 2024版有限責任公司發(fā)起人協(xié)議書
- 2024年03月浙江中國工商銀行浙江平湖工銀村鎮(zhèn)銀行春季校園招考筆試歷年參考題庫附帶答案詳解
- 2024-2030年中國通航飛行服務站(FSS)行業(yè)發(fā)展模式規(guī)劃分析報告
- 機械制造企業(yè)風險分級管控手冊
- 地系梁工程施工方案
- 藏文基礎-教你輕輕松松學藏語(西藏大學)知到智慧樹章節(jié)答案
- 2024電子商務平臺用戶隱私保護協(xié)議3篇
- 安徽省蕪湖市2023-2024學年高一上學期期末考試 英語 含答案
- 電力工程施工安全風險評估與防控
- 醫(yī)學教程 常見體表腫瘤與腫塊課件
- 內(nèi)分泌系統(tǒng)異常與虛勞病關系
- 智聯(lián)招聘在線測評題
- DB3418T 008-2019 宣紙潤墨性感官評判方法
評論
0/150
提交評論