• 表达式计算器程序 > 马踏棋盘和表达式求值上机报告 PB01011049 金钊2002.10
  • 马踏棋盘和表达式求值上机报告 PB01011049 金钊2002.10

    免费下载 下载该文档 文档格式:DOC   更新时间:2011-01-03   下载次数:0   点击次数:1
    T& pop(弹栈
    T& top(栈顶元素
    void traverse(void (*callback)(T&)); // 用callback函数对栈从低向上遍历
    private:
    void inc(扩充可用的栈空间
    };
    2. 马踏棋盘的设计思想
    程序的问题求解部分:
    具体为Solve函数:
    bool Solve(int x, int y, int board[][8], bool (*callback)(_stack<_point>&, bool));
    (x, y) 为起始坐标,board 为结果存放,最后的函数地址为演示时调用的回调函数.
    返回值表示解是否存在.
    界面部分(流程):
    3. 表达式计算器设计思想
    程序的问题求解部分:
    具体为Solve函数:
    int Solve(char* buffer, double* ret);
    buffer 为表达式,ret 为结果存放.
    返回值为错误标志:
    0 - 操作成功,ret 有效
    1 - 未知字符
    2 - 括号不匹配
    3 - 非法表达式
    4 - 零不能做除数
    5 - 无法计算的幂
    6 - 空表达式
    界面部分:
    共20个按钮为子窗口,当触发 BN_CLICKED 的WM_COMMAND 事件时,主窗口的窗口回调函数判断事件来源,
    如果不是"="按钮发出,则按要求更新静态框的值;
    如果是,则取静态框的值,并调用 Solve,将结果输出到静态框.
    详细设计:
    1. 栈(只列举部分的方法)
    本次上机使用的栈均基于数组.
    _stack域内:
    void push(T e)
    {
    data[ptr++] = e;
    if (ptr == length) inc();
    }
    T& pop()
    {

    上一页下一页

  • 下载地址 (推荐使用迅雷下载地址,速度快,支持断点续传)
  • 免费下载 DOC格式下载
  • 您可能感兴趣的
  • 表达式计算器  5800计算器程序  卡西欧5800计算器程序  卡西欧4500计算器程序  5800计算器测量程序  5800计算器隧道程序  fx5800计算器程序  5800计算器万能程序  计算器程序代码