四则运算计算器

Object-C,NumberDemo和StringDemo

晚上抽空写了2个Demo.
第1个是演示字符串,第2个是演示数组和可变数组。
只用到了几个基本的方法和基本语句。

NSString字符串对象,NSNumber和NSMutableNumber,if语句,NSLog方法。

使用Mac学习Object-C,感觉特别辛苦。
编程语法很简单,就是Mac的键盘按键、快捷方式、鼠标滚动,与Windows和HP电脑很不匹配。

另外,Object-C最大的坑是,方法调用,[a add
b]用“中括号”表示方法调用,够奇葩的啊。
你大爷的~擦~

//
//  main.m
//  StringDemo
//
//  Created by fansunion on 15/11/16.
//  Copyright (c) 2015年 demo. All rights reserved.
//


#import 


int main(int argc, const char * argv[]) {
    @autoreleasepool {
       NSString *str1 [email protected];
       NSString *str2 [email protected];
        NSString *str3 [email protected];
        //计算字符串的长度
        NSLog(@str1 length %lu,[str1 length]);

        //验证2个字符串是否相等
        if([str1 isEqualToString:str2]){
            NSLog(@str1 == str2);
        }else{
            NSLog(@str1 != str2);
        }

        if([str2 isEqualToString:str3]){
            NSLog(@str2 == str3);
        }else{
         NSLog(@str2 != str3);
        }

    }
    return 0;
}

2015-11-16 21:08:20.723 StringDemo[2139:127831] str1 length 9
2015-11-16 21:08:20.724 StringDemo[2139:127831] str1 != str2
2015-11-16 21:08:20.724 StringDemo[2139:127831] str2 == str3
Program ended with exit code: 0

//
//  main.m
//  NumberDemo
//
//  Created by fansunion on 15/11/16.
//  Copyright (c) 2015年 demo. All rights reserved.
//


#import 


int main(int argc, const char * argv[]) {
    @autoreleasepool {
        //不可变数组
        NSArray *names =[NSArray arrayWithObjects: @FansUnion,@XiaoLei,nil];
        NSLog(@NSArray!);
        int i = 0;
        for(i=0;i<2;i++){
            NSLog(@%@,[names objectAtIndex:i]);
        }
        //可变数组
        NSMutableArray *numbers =[NSMutableArray array];
        NSNumber *myNumber;

        for(i=0;i<10;i++){
            myNumber=[NSNumber numberWithInteger:i];
            [numbers addObject:myNumber];
        }
        //显示数组中的值
        for(i=0;i<10;i++){
            NSLog(@%@,[numbers objectAtIndex:i]);
        }

    }
    return 0;
}

2015-11-16 21:22:04.533 NumberDemo[2218:131384] NSArray!
2015-11-16 21:22:04.534 NumberDemo[2218:131384] FansUnion
2015-11-16 21:22:04.535 NumberDemo[2218:131384] XiaoLei
2015-11-16 21:22:04.535 NumberDemo[2218:131384] 0
2015-11-16 21:22:04.535 NumberDemo[2218:131384] 1
2015-11-16 21:22:04.535 NumberDemo[2218:131384] 2
2015-11-16 21:22:04.535 NumberDemo[2218:131384] 3
2015-11-16 21:22:04.536 NumberDemo[2218:131384] 4
2015-11-16 21:22:04.536 NumberDemo[2218:131384] 5
2015-11-16 21:22:04.536 NumberDemo[2218:131384] 6
2015-11-16 21:22:04.536 NumberDemo[2218:131384] 7
2015-11-16 21:22:04.536 NumberDemo[2218:131384] 8
2015-11-16 21:22:04.536 NumberDemo[2218:131384] 9
Program ended with exit code: 0

 

晚上抽空写了2个Demo. 第1个是演示字符串,第2个是演示数组和可变数组。
只用到了几个基本的方法和基本语句。…

Object-C,四则运算计算器

 

下面是是一个比较复杂的类。

定义一个四则运算计算器Caculator的接口和实现。

在main函数中,让用户输入四则运算表达式,比如a+b,a-b。

最后,在控制台输出结果。

 

用到的语法:接口、类的定义,实例方法,switch-case语句。

 

/

/
//  main.m
//  switch-case
//
//  Created by fansunion on 15/11/15.
//  Copyright (c) 2015年 demo. All rights reserved.
//

#import 

@interface Caculator : NSObject
-(void)setValue:(double)value;
-(double)getResult;

-(void)add:(double)value;
-(void)sub:(double)value;
-(void)multiply:(double)value;
-(void)divide:(double)value;

@end

@implementation Caculator

{
    double value;
}

-(void)setValue:(double)v{
    value=v;
}

-(void)add:(double)v{
    value+=v;
}

-(void)sub:(double)v{
    value-=v;
}
-(void)multiply:(double)v{
    value*=v;
}
-(void)divide:(double)v{
    value/= v;
}
-(double)getResult{
return value;
}


@end
int main(int argc, const char * argv[]) {
    @autoreleasepool {
        double value = 0;
        double v=0;
        char operator;
        Caculator *caculator =[[Caculator alloc]init];
        NSLog(@请输入表达式!);
        scanf(%lf %c %lf,&value,&operator,&v);
        [caculator setValue:value];
        switch(operator){
                case '+':
                [caculator add:v];
                break;
                case '-':
                [caculator sub:v];
                break;
                case '*':
                [caculator multiply:v];
                break;
                case '/':
                [caculator divide:v];
                break;
                default:
                NSLog(@未知的操作符);
                break;
        }
        NSLog(@%.2f,[caculator getResult]);
    }
    return 0;
}

 

加法,2015+2014=4029

2015-11-15 17:23:13.722 switch-case[1684:89106] 请输入表达式!

2015+2014

2015-11-15 17:23:21.586 switch-case[1684:89106] 4029.00

Program ended with exit code: 0

 

减法,2015-2020=-5

2015-11-15 17:23:44.579 switch-case[1688:89497] 请输入表达式!

2015-2020

2015-11-15 17:23:55.500 switch-case[1688:89497] -5.00

Program ended with exit code: 0

 

乘法,2015*10=20150

2015-11-15 17:24:35.764 switch-case[1692:89985] 请输入表达式!

2015*10

2015-11-15 17:24:45.414 switch-case[1692:89985] 20150.00

Program ended with exit code: 0

 

除法,2015/10=201.5

2015-11-15 17:24:58.379 switch-case[1696:90264] 请输入表达式!

2015/10

2015-11-15 17:25:10.669 switch-case[1696:90264] 201.50

Program ended with exit code: 0

 

学习这个例子,感觉瞬间回到了2008年上半学年,大一上学期~

 

下面是是一个比较复杂的类。 定义一个四则运算计算器Caculator的接口和实现。
在main函数中,让用户输入四则运算…

Object-C初体验

 

前几周,看了书,标记了要Coding的例子。(书是写博客,CSDN送的,也可以用C币买)

 

周末,来搞几个例子。

 

2015年春,刚刚买Mac的时候,就搞了1个Object-C的HelloWorld,毕竟新手。

 

总的来说,Mac、XCode、Object-C,用起来特别的不习惯啊。

 

操作系统、快捷键、IDE的用法,难受的要死,毕竟用了10多年Windows,一下子很难切换到Mac。

 

买的Mac,键盘也比较小,搞起来不是很方便,没有Hp电脑那么习惯。

 

今天,亲自Coding了几个小例子,里程碑,表明我真的开始动手了。

 

 

  //
//  main.m
//  switch
//
//  Created by fansunion on 15/11/15.
//  Copyright (c) 2015年 demo. All rights reserved.
//

#import 

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        // insert code here...
        NSLog(@Hi, FansUnion!);
    }
    return 0;
}

 

 

2015-11-15 11:36:44.984 switch[1410:50516] Hi, FansUnion!

Program ended with exit code: 0

 

 

//
//  main.m
//  for
//
//  Created by fansunion on 15/11/15.
//  Copyright (c) 2015年 demo. All rights reserved.
//

#import 

int main(int argc, const char * argv[]) {
    @autoreleasepool {
        // insert code here...
        int n =0;
        int sum=0;
        for(n=1;n<=10;n=n+1){
            sum += n;
        }
        NSLog(@The sum is %i,sum);
    }
    return 0;
}

 

2015-11-15 11:08:42.517 for[1242:40319] The sum is 55

Program ended with exit code: 0

 

Mac很有艺术感,但是多个软件之间切换真的很难用。

Windows是主流,真的是这样啊。

 

 

 

前几周,看了书,标记了要Coding的例子。(书是写博客,CSDN送的,也可以用C币买)
周末,来搞几个例子。 2015年春,刚刚买Ma…