发布网友 发布时间:2022-04-22 00:56
共2个回答
热心网友 时间:2024-02-23 00:38
该算法是做什么的,背景意义什么的网上搜一搜,copy
流程图画出来,能占一两页篇幅
针对该流程图再写一下文字版流程,一步一回车,写好后剪切到流程图前面
核心代码copy进来
该算法由何种思想演变而来,写一写
讨论该算法的时间复杂度
和其他有可比性的算法进行比较,同一组输入,同样的环境,对输出进行统计,绘制表格,写出结论
该算法的改进可能性探讨
感想(多凑点字数)
暂时就想到这么多,如果你有其他课设的报告模版,可以再加点
热心网友 时间:2024-02-23 00:38
1. calculator功能需求分析
作为计算器,至少应该具备以下几点功能:
(1) 计算器要有GUI界面。
(2) 能运算小数,并且不会产生精度损失。
(3) 用户可以输入所需计算的数值,可以进行加、减、乘、除四种最基本的运算和
混合运算。
(4) 允许正负数间的运算。
(5) 可以求一个数值的平方及倒数,可以进行阶乘运算。
(6) 有菜单栏选项。
具体的功能需求和界面我们可以模仿微软公司出品的windowsXP中自带的计算器。如图一:
图一 windows XP 中的计算器界面图
2. calculator基本设计思路和类划分
基于第1节中提出对于calculator功能需求的分析,对这个应用程序设计划分类如下:
(1) calculator:这个类的功能是实现一个框架
(2) calculatorFrame:这个类作为主类,实现主要功能:运算,按钮排布,菜单,颜
色设置,文本显示
3. calculator的具体实现
3.1 calculator类的设计
calculator用来定义一个计算器的框架
1.主要方法
下面以表格的形式列出calculator类至少应该具有的方法和功能描述(如表一所示)。
3.2 calculatorFrame类的设计
calculatorFrame类实现整体功能,包括窗体的初始化、各种用户事件监听和响应(菜单、运算、结果显示等等)。
1. 父类和主要接口
设计calculator整体 窗口特性继承自JFrame类。
为了对用户命令做出响应(如帮助菜单栏弹出窗口),calculatorFrame类必须能够监听到用户的命令,因此设计calculatorFrame类实现ActionListener接口。
2. 主要方法
下面以表格的形式列出calculatorFrame类至少应该具有的方法和功能描述(如表二所示)。
3. 基本效果
图二为calculator的基本效果图。
4. 代码分析
calculator.java代码如下:
//calculator.java
/*
*文件名:calculator.java
*说明:calculatorFrame主类,实现主要功能
*/
//导入AWT包
import java.awt.*;
import java.awt.event.*;
//导入SWING包
import javax.swing.*;
import javax.swing.event.*;
class calculator
{
public static void main(String[] args)
{
calculatorFrame frame = new calculatorFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.show();
}
}
//主类calculatorFrame
class calculatorFrame extends JFrame
implements ActionListener
{
public calculatorFrame()
{
//设置框架主题及大小
setTitle("计算器");
setSize(300,235);
//将面板置于框架中
Container contentPane = getContentPane();
setResizable(false);
//创建按钮面板
JPanel buttonPanel = new JPanel();
//创建数字键“1”
b11=new JButton ("1");
//设置颜色
b11.setForeground(Color. BLUE);
//创建事件*
b11.addActionListener(this);
b12=new JButton ("2");
b12.setForeground(Color. BLUE);
b12.addActionListener(this);
b13=new JButton ("3");
b13.setForeground(Color. BLUE);
b13.addActionListener(this);
b6=new JButton ("4"); b6.setForeground(Color. BLUE); b6.addActionListener(this); b7=new JButton ("5"); b7.setForeground(Color. BLUE); b7.addActionListener(this); b8=new JButton ("6"); b8.setForeground(Color. BLUE); b8.addActionListener(this); b1=new JButton ("7"); b1.setForeground(Color. BLUE); b1.addActionListener(this); b2=new JButton ("8"); b2.setForeground(Color. BLUE); b2.addActionListener(this); b3=new JButton ("9"); b3.setForeground(Color. BLUE); b3.addActionListener(this); b16=new JButton ("0"); b16.setForeground(Color. BLUE); b16.addActionListener(this); b17=new JButton ("+/-"); b17.setForeground(Color. BLUE); b17.addActionListener(this); b4=new JButton ("+"); b4.addActionListener(this); b9=new JButton ("-"); b9.addActionListener(this); b14=new JButton ("*"); b14.addActionListener(this); b19=new JButton ("/"); b19.addActionListener(this); b5=new JButton ("1/x"); b5.setForeground(Color. YELLOW); b5.addActionListener(this); b20=new JButton ("="); b20.setForeground(Color. YELLOW); b20.addActionListener(this); //”.”显示不清晰,故采用“。”代替
b18=new JButton ("。");
b18.setForeground(Color. BLUE);
b18.addActionListener(this);
b10=new JButton ("x^2");