资源简介
计算器在实现基本运算的基础上,能实现多重运算,例如:2+3*4-6/2运算等。计算器是实用Objective-c编写成的,是在Cocoa下写的,不是IOS,是MacOS,请确认好再下载,重要地方写了注释,代码简单易懂。
代码片段和文件信息
//
// AppDelegate.m
// cjyCalculator
//计算器能实现 1+2*3/2-5运算
// Created by jianyi.chen on 17/8/25.
// Copyright © 2017年 Incube. All rights reserved.
//
#import “AppDelegate.h“
@interface AppDelegate ()
@property (weak) IBOutlet NSWindow *window;
@property (nonatomic strong) NSMutableArray *Array; //存数字
@property (nonatomic strong) NSMutableArray *Array2; //存符号
@end
@implementation AppDelegate
{
int num; //判断状态:0:正常状态; 1:前一步进行了=号运算;2:前一步进行了清零;
}
-(NSMutableArray *)Array{
if(!_Array)
_Array = [[NSMutableArray alloc] init];
return _Array;
}
-(NSMutableArray *)Array2{
if(!_Array2)
_Array2 = [[NSMutableArray alloc] init];
return _Array2;
}
//输入数字
-(void)btn:(id)sender{
if(num==1){
self.textFiled.stringValue=@““;
[_Array2 removeAllobjects];
[_Array removeAllobjects];
num=2;
}
NSString *btn=[sender title];
if([btn floatValue]==0){ //输入0时判断输入框里是否存在数字,存在数字时才能存入0
if([self.textFiled.stringValue floatValue]>=1){
self.textFiled.stringValue=[self.textFiled.stringValue stringByAppendingString:btn];
}
}else{
self.textFiled.stringValue=[self.textFiled.stringValue stringByAppendingString:btn];
}
}
//加号运算
-(void)btnAdd:(id)sender{
if(![self.textFiled.stringValue isEqual:@““]){
NSInteger t2=_Array2.count;
if(num==2){
[ self.Array addobject:self.textFiled.stringValue ];
[self.Array2 addobject:@“+“];
self.textFiled.stringValue=@““;
num=0;
}else{
if(num==1){
num=0;
}else{
[ self.Array addobject:self.textFiled.stringValue ];
if([_Array2[0] isEqual:@“+“]){
if(t2==2){
if([_Array2[1] isEqual:@“*“]){
self.num1=[_Array[0] floatValue];
self.num2=[_Array[1] floatValue];
self.num4=[_Array[2] floatValue];
self.num3= self.num1+self.num2*self.num4;
[_Array replaceobjectAtIndex:0 withobject:[NSString stringWithFormat: @“%f“ self.num3]];
[_Array removeobjectAtIndex:2];
[_Array removeobjectAtIndex:1];
[_Array2 removeobjectAtIndex:1];
[_Array2 removeobjectAtIndex:0];
}else{
self.num1=[_Array[0] floatValue];
self.num2=[_Array[1] floatValue];
self.num4=[_Array[2] floatValue];
self.num3= self.num1+self.num2/self.num4;
[_Array replaceobjectAtIndex:0 withobject:[NSString stringWithFormat: @“%f“ self.num3]];
[_Array removeobjectAtIndex:2];
[_Array removeobjectAtIndex:1];
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-08-25 10:57 cjyCalculator鍓湰\
文件 6148 2017-09-08 14:58 cjyCalculator鍓湰\.DS_Store
目录 0 2017-09-08 16:23 __MACOSX\
目录 0 2017-09-08 16:23 __MACOSX\cjyCalculator鍓湰\
文件 120 2017-09-08 14:58 __MACOSX\cjyCalculator鍓湰\._.DS_Store
目录 0 2017-09-08 16:11 cjyCalculator鍓湰\cjyCalculator\
文件 6148 2017-09-08 14:58 cjyCalculator鍓湰\cjyCalculator\.DS_Store
目录 0 2017-09-08 16:23 __MACOSX\cjyCalculator鍓湰\cjyCalculator\
文件 120 2017-09-08 14:58 __MACOSX\cjyCalculator鍓湰\cjyCalculator\._.DS_Store
文件 726 2017-09-08 14:21 cjyCalculator鍓湰\cjyCalculator\AppDelegate.h
文件 171 2017-09-08 14:21 __MACOSX\cjyCalculator鍓湰\cjyCalculator\._AppDelegate.h
文件 21369 2017-09-08 16:11 cjyCalculator鍓湰\cjyCalculator\AppDelegate.m
文件 171 2017-09-08 16:11 __MACOSX\cjyCalculator鍓湰\cjyCalculator\._AppDelegate.m
目录 0 2017-08-25 08:46 cjyCalculator鍓湰\cjyCalculator\Assets.xcassets\
目录 0 2017-08-25 08:46 cjyCalculator鍓湰\cjyCalculator\Assets.xcassets\AppIcon.appiconset\
文件 903 2017-08-25 08:46 cjyCalculator鍓湰\cjyCalculator\Assets.xcassets\AppIcon.appiconset\Contents.json
目录 0 2017-09-08 16:23 __MACOSX\cjyCalculator鍓湰\cjyCalculator\Assets.xcassets\
目录 0 2017-09-08 16:23 __MACOSX\cjyCalculator鍓湰\cjyCalculator\Assets.xcassets\AppIcon.appiconset\
文件 171 2017-08-25 08:46 __MACOSX\cjyCalculator鍓湰\cjyCalculator\Assets.xcassets\AppIcon.appiconset\._Contents.json
目录 0 2017-09-08 14:11 cjyCalculator鍓湰\cjyCalculator\ba
文件 66778 2017-09-08 14:11 cjyCalculator鍓湰\cjyCalculator\ba
文件 1028 2017-08-25 08:46 cjyCalculator鍓湰\cjyCalculator\Info.plist
文件 243 2017-08-25 08:46 cjyCalculator鍓湰\cjyCalculator\main.m
文件 171 2017-08-25 08:46 __MACOSX\cjyCalculator鍓湰\cjyCalculator\._main.m
目录 0 2017-08-25 08:46 cjyCalculator鍓湰\cjyCalculator.xcodeproj\
文件 10544 2017-08-25 08:46 cjyCalculator鍓湰\cjyCalculator.xcodeproj\project.pbxproj
目录 0 2017-08-25 08:46 cjyCalculator鍓湰\cjyCalculator.xcodeproj\project.xcworkspace\
文件 158 2017-08-25 08:46 cjyCalculator鍓湰\cjyCalculator.xcodeproj\project.xcworkspace\contents.xcworkspacedata
目录 0 2017-08-25 08:46 cjyCalculator鍓湰\cjyCalculator.xcodeproj\project.xcworkspace\xcuserdata\
目录 0 2017-09-08 16:12 cjyCalculator鍓湰\cjyCalculator.xcodeproj\project.xcworkspace\xcuserdata\jianyi.chen.xcuserdatad\
文件 23896 2017-09-08 16:12 cjyCalculator鍓湰\cjyCalculator.xcodeproj\project.xcworkspace\xcuserdata\jianyi.chen.xcuserdatad\UserInterfaceState.xcuserstate
............此处省略7个文件信息
评论
共有 条评论