当前位置:首页 > 谈天说地

iOS实现简单计算器小功能

34资源网2022-01-28427

本文实例为大家分享了ios实现简单计算器小功能的具体代码,供大家参考,具体内容如下

simplecaculatorviewcontroller.h

//
//  simplecaculatorviewcontroller.h
//  simplecaculator
//
//  created by li junui on 14-2-12.
//  copyright (c) 2014年 lee junhui. all rights reserved.
//
 
#import <uikit/uikit.h>
 
@interface simplecaculatorviewcontroller : uiviewcontroller
@property (weak, nonatomic) iboutlet uilabel *displayscreen;
- (ibaction)numberbtnclick:(uibutton *)sender;
- (ibaction)cleards:(uibutton *)sender;
- (ibaction)caculate:(uibutton *)sender;
- (ibaction)hint:(uibutton *)sender;
- (ibaction)act:(uibutton *)sender;
- (ibaction)clearback:(uibutton *)sender;
 
 
 
@property(assign, nonatomic) bool isuserinputingnumber;
@property(assign, nonatomic) int num1;
@property(assign, nonatomic) int num2;
@property(assign, nonatomic) int tagforact;
 
@end

simplecaculatorviewcontroller.m

//
//  simplecaculatorviewcontroller.m
//  simplecaculator
//
//  created by li junui on 14-2-12.
//  copyright (c) 2014年 lee junhui. all rights reserved.
//
 
#import "simplecaculatorviewcontroller.h"
 
@interface simplecaculatorviewcontroller ()
 
@end
 
@implementation simplecaculatorviewcontroller
 
//记录数字按钮点击事件
- (ibaction)numberbtnclick:(uibutton *)sender {
    
    if(self.isuserinputingnumber){
        int re = [_displayscreen.text intvalue] * 10 + [sender.currenttitle intvalue];
        _displayscreen.text = [nsstring stringwithformat:@"%d",re];
    } else{
        [_displayscreen settext:sender.currenttitle];
        _isuserinputingnumber = yes;//因为第一次进入程序会输入数字,因此为yes
    }
}
 
//清零操作
- (ibaction)cleards:(uibutton *)sender {
    
    _displayscreen.text = @"0";
    _isuserinputingnumber = no;//表示没有再输入了
}
 
//得到结果
- (ibaction)caculate:(uibutton *)sender {
    int re = 0;
    _num2 = [_displayscreen.text intvalue];
    switch (_tagforact) {
        case 1: //加法
            re = _num1 + _num2;
            break;
        case 2: //减法
            re = _num1 - _num2;
            break;
        case 3: //乘法
            re = _num1 * _num2;
            break;
        case 4: //除法
            re = _num1 / _num2;
            break;
    }
    _displayscreen.text = [nsstring stringwithformat:@"=%d", re];
    _num1 = 0;
    _num2 = 0;
}
 
//弹出提示对话框
- (ibaction)hint:(uibutton *)sender {
    uialertview *alert = [[uialertview alloc] initwithtitle:@"温馨提示" message:@"本计算器由ljh出品" delegate:self cancelbuttontitle:@"返回" otherbuttontitles: nil];
    [alert show];
}
 
//进行四则运算
- (ibaction)act:(uibutton *)sender {
    //1.得到_displayscreen上的数字
    _num1 = [_displayscreen.text intvalue];
    _displayscreen.text = sender.currenttitle;
    _isuserinputingnumber =yes;
    switch (sender.tag) {
        case 1: //加法
            _tagforact = 1;
            break;
        case 2: //减法
            _tagforact = 2;
            break;
        case 3: //乘法
            _tagforact = 3;
            break;
        case 4: //除法
            _tagforact = 4;
            break;
    }
}
 
//进行回删操作
- (ibaction)clearback:(uibutton *)sender {
    int length = [_displayscreen.text length];
    int temp = [_displayscreen.text intvalue];
    temp = temp/length;
}
@end

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持萬仟网。

看完文章,还可以扫描下面的二维码下载快手极速版领4元红包

快手极速版二维码

快手极速版新人见面礼

除了扫码领红包之外,大家还可以在快手极速版做签到,看视频,做任务,参与抽奖,邀请好友赚钱)。

邀请两个好友奖最高196元,如下图所示:

快手极速版邀请好友奖励

扫描二维码推送至手机访问。

版权声明:本文由34楼发布,如需转载请注明出处。

本文链接:https://www.34l.com/post/6653.html

分享给朋友:

相关文章

30条关于追逐梦想的励志语录分享

30条关于追逐梦想的励志语录分享

1、天行健,君子以自強不息,地勢坤,君子以厚德载物。…

用白面书生造句,看看这七句有哪句适合你?

用白面书生造句,看看这七句有哪句适合你?

1、他是个手无缚鸡之力的白面书生。…

背光键盘怎么开灯(有背光和无背光的区别)

背光键盘怎么开灯(有背光和无背光的区别)

机械键盘轴体一直是以樱桃(Cherry)最受大众欢迎,但近几年国产轴体的快速发展,让很多玩家开始享受到更“廉价”的产品。作为国内外设领军者,雷柏自产的雷柏轴已经获得众多游戏爱好者的好评。雷柏同时还有采用经典樱桃轴的产品,笔者最近收到雷柏V8…

联想乐pad平板电脑有哪些版本(平板电脑排行榜性价比)

联想乐pad平板电脑有哪些版本(平板电脑排行榜性价比)

对于安卓平板电脑行业而言,创新相对来说比较困难。一方面,安卓系统的功能早已经被各方挖掘殆尽;另一方面,从整个平板电脑行业大环境来看,iPad阵营坚固的护城河也影响着安卓阵营的创新欲望。再加上时下热衷于投身平板电脑行业的品牌本来就不像以往那么…

一周涨粉几百万,“张同学”凭什么火?

一周涨粉几百万,“张同学”凭什么火?

编者按:本文来自微信公众号时趣研究院(ID:SocialTouch2020),作者:时有趣,创业邦经授权转载 在最近的一段时间里,名叫“张同学”的博主刷屏了抖音,相关话题频频登上热榜,甚至还得到了人民网的点评。 张同学第一个视频的发布日期…

区块链开发技术有前景吗(区块链技术开发费用)

由于人们对大数据、区块链、人工智能行业的认识越来越深入,企业可以通过大数据、区块链、人工智能等思维和技术寻求变革。传统行业依靠原有产业优势“后来居上”,低调布局区块链技术,传统产业企业和科技企业同时进入产业区块链赛道。在区块链发展报告中,我…