`
R任轩
  • 浏览: 15891 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

评估简单表达式的值(简易计算器)

 
阅读更多
[b]Calculator.h[/b]
 //实现Calculator类
@interface Calculator : NSObject
{
    double accumulator;
}
//累加方法
-(void) setAccumulator: (double) value;
-(void) clear;
-(double) accumulator;
//算数方法
-(void) add: (double) value;
-(void) subtract: (double) value;
-(void) multiply: (double) value;
-(void) divide: (double) value;
@end

[b]Calculator.m[/b]
#import "Calculator.h"

@implementation Calculator
-(void) setAccumulator:(double)value{
    accumulator = value;
}
-(void) clear{
    accumulator = 0;
}
-(double) accumulator{
    return accumulator;
}
-(void) add:(double)value{
    accumulator += value;
}
-(void) subtract:(double)value{
    accumulator -= value;
}
-(void) multiply:(double)value{
    accumulator *= value;
}
-(void) divide:(double)value{
    accumulator /= value;
}
@end

[b]main.m[/b]
#import "Calculator.h"
int main(int argc, const char * argv[]) {
    @autoreleasepool {
 double value1, value2;
        char operator;
        Calculator *deskCalc = [[Calculator alloc] init];
        
        NSLog(@"Enter your expression.");
        scanf("%lf %c %lf", &value1, &operator, &value2);
        
        [deskCalc setAccumulator:value1];
        if (operator == '+')
            [deskCalc add:value2];
        else if(operator =='-')
            [deskCalc subtract:value2];
        else if(operator == '*')
            [deskCalc multiply:value2];
        else if(operator == '/')
             if(value2 == 0)
                 NSLog(@"Division by Zero");
             else
                 [deskCalc divide:value2];
        else
            NSLog(@"Unkown operator.");
        NSLog(@"%.2f",[deskCalc accumulator]);
        }
         return 0;
        }

 此计算器总共有三个界面分别为Cacluator.h、Cacluato.rm、main.m三个界面。在Cacluator。h中声明成员变量,描述类的对象属性。在Cacluator。m中用于方法的实现。主函数部分(main。m)实现整个表达式的完整表达及结果的得出。

分享到:
评论

相关推荐

    IOS-简易计算器-根据Stanford教授思想做的

    `NSExpression`是苹果提供的一个类,可以解析和评估数学表达式,但它的灵活性有限。如果需要更复杂的计算,开发者可能选择编写自己的解析器或使用已有的第三方库。 在iOS中,数据持久化通常不是必需的,因为计算器...

    python实现简易计算器

    总的来说,这个Python简易计算器项目是一个很好的实践,可以帮助初学者理解GUI编程的基本概念,以及如何处理用户输入和事件响应。通过这个项目,你可以深入学习Tkinter库,了解如何构建交互式的Python应用。同时,这...

    VS2013下MFC实现的简单计算器

    例如,可以创建一个名为CExpression的类,该类可以存储一个表达式,并提供了评估该表达式的成员函数。 总的来说,这个项目提供了一个学习MFC和C++ GUI编程的良好实例。通过阅读源代码和注释,你可以深入了解MFC框架...

    简易计算器

    在IT领域,创建一个“简易计算器”通常是指开发一个能够执行基本数学运算的软件应用程序。这个“计算器-满足小括号”可能是一个具有处理优先级运算功能的计算器,特别是能够正确处理包含括号的数学表达式。在编程中...

    java使用swing组件编写的简易计算器

    在这个案例中,"java使用swing组件编写的简易计算器"是一个利用Java Swing来实现的简单计算程序,它在IntelliJ IDEA(简称Idea)这款流行的Java集成开发环境中编写完成。 首先,Swing组件是Java AWT(Abstract ...

    c语言编写的计算器

    2. 表达式评估:根据后缀表达式规则,使用堆栈计算表达式的值。 3. 错误处理:检测并处理非法字符、未匹配的括号等问题。 4. 输出结果:将计算得到的结果展示给用户。 这个C语言编写的计算器项目,不仅涵盖了基本的...

    使用JSP+Servlet制作的简易计算器

    总的来说,这个简易计算器项目是一个学习JSP和Servlet的入门实践,它涵盖了基本的HTTP请求处理、数据传输以及前后端交互。通过这个项目,开发者可以深入理解Web应用的基本工作原理,同时也能提升在实际开发中的问题...

    JavaScript-计算器

    1. **基础数学运算**:JavaScript的`eval()`函数在计算器中被用来评估用户输入的数学表达式。例如,当用户点击数字和运算符按钮时,这些值会被组合成一个字符串,然后通过`eval()`执行计算,结果展示在页面上。 2. ...

    LabVIEW虚拟仪器课程设计简易计算器

    ### LabVIEW虚拟仪器课程设计简易计算器相关知识点 #### 一、LabVIEW简介 **1、虚拟仪器(VI)的概念** 虚拟仪器(Virtual Instrument,简称VI)是指利用高性能的计算机软硬件资源来模拟传统物理仪器的功能的一种...

    一个简单的逻辑计算器源码

    3. **求值过程**:解析后的表达式会被递归地评估,直到得到最终的布尔结果。 4. **输入/输出处理**:用户可以通过命令行界面(CLI)输入表达式,计算器返回计算结果。 5. **错误处理**:基础的输入验证,确保用户...

    VB 课程设计 打字练习和简单的计算器

    在这个VB课程设计中,学生被要求完成两个项目:打字练习程序和一个简单的计算器。这两个项目都是初学者常见的练习,旨在帮助他们更好地理解和掌握VB的基本概念和编程技巧。 打字练习程序通常是通过显示随机或自定义...

    jisuanqi.zip_zip

    在计算机科学中,创建一个简易计算器可以涉及编程语言的学习,例如Python、JavaScript或者C++等,这些语言都提供了处理数学运算的函数和方法。 标签“zip”再次强调了文件的压缩格式。使用ZIP压缩工具,用户可以将...

    计算器1

    "计算器1"是一个基于Python开发的简易计算器项目。在Python编程语言中,创建一个计算器涉及到基本的算术运算,如加、减、乘、除,以及可能的更复杂的功能,如求平方根、指数运算等。这个项目可能是为了教授初学者...

    Java期末大作业指南-涵盖矩阵乘法与GUI应用开发-综合评估

    任务包括使用for循环计算指定数学表达式的值、实现两个已定义矩阵相乘的操作、利用Java GUI构建简易的功能型应用程序——一个可以执行基本算术操作的计算器、以及一个小而有趣的游戏——网球接球挑战游戏。...

    计算机课程设计(共23张PPT).pptx

    1. 简易计算器程序:要求实现基础数学运算、高阶运算,支持表达式解析,使用字符界面。 2. 模拟双色球开奖程序:模拟彩票抽奖,计算中奖情况,支持用户交互。 3. 汉诺塔游戏程序:实现图形化界面,允许用户手动或...

    2021-2022计算机二级等级考试试题及答案No.9929.docx

    16. **Python简易计算器** - 一个简单的Python计算器程序可以使用Tkinter库创建图形用户界面,按钮事件处理函数用来处理计算,并使用eval()函数评估表达式。代码示例中的buttonCallBack函数就是这样的事件处理器,而...

    Matlab课程设计报告模板.doc

    Matlab课程设计报告的核心是创建一个简易计算器程序,旨在帮助学生熟悉MATLAB的GUI(图形用户界面)设计和主要控件的使用。该设计旨在实现一个功能完备的计算器,包括基本的数学运算和一些科学计算功能。 1. 设计...

    C语言课程设计题目汇总.doc

    16. 简单计算器:实现基本的算术运算,涉及运算符优先级和表达式解析。 17. 计算24游戏:涉及数学策略和回溯算法来找到解决方案。 18. 输入盘子数:可能是指汉诺塔问题,需要递归算法解决。 19. 多项式加法的实现...

    Simple-Calculator-using-JavaScript

    【JavaScript简易计算器实现详解】 在Web开发中,创建一个简单的计算器是学习JavaScript基础的一个经典练习。这个项目,名为"Simple-Calculator-using-JavaScript",旨在教你如何利用JavaScript的事件处理、DOM操作...

Global site tag (gtag.js) - Google Analytics