您的位置:首页 > 移动开发 > Objective-C

objective-c第四章课后练习答案

2015-03-31 19:05 281 查看
//
//  main.m
//  DateTypeConvert
//

/*前6道题
#import <Foundation/Foundation.h>

@interface Complex : NSObject
-(void) setReal:(double)a;
-(void) setImaginary:(double)b;
-(void) print;//显示a+bi;
-(double) real;
-(double) imaginary;
-(void) seti:(int)i;
-(int) it;
@end

@implementation Complex
{
double real;
double imaginary;
int it;
}
-(void) seti:(int)i
{
it=i;
}
-(void) setReal:(double)a
{
real = a;
}
-(void) setImaginary:(double)b
{
imaginary = b;
}
-(void) print//显示a+bi;
{
NSLog(@"a+bi=%f",real+imaginary*it);
}
-(double) real
{
return real;
}
-(double) imaginary
{
return imaginary;
}
-(int) it
{
return it;
}

@end

int main(int argc, const char * argv[]) {
@autoreleasepool {
//85页的练习题;
//        int F = 27℃;
//        float C =(float)(F-32)/1.8;
//        NSLog(@"wendu=%f℃",C);

//        char c,d;
//        c = 'd';
//        d = c;
//        NSLog(@"d=%c",d);

//        float x = 2.55;
//        float theresult = 3*x*x*x-5*x*x+6;
//        NSLog(@"theresult=%f",theresult);
//
//        float a = 3.31e-8+2.01e-7;
//        float b =7.16e-6+2.01e-8;
//        NSLog(@"is=%.2e",a/b);

Complex *newComplex=[[Complex alloc] init];
[newComplex seti:2];
[newComplex setReal:3];
[newComplex setImaginary:4];
NSLog(@"RESULT IS ");
[newComplex print];
}
return 0;
}
*/

#import <Foundation/Foundation.h>
@interface Rectangle:NSObject
-(void) setWidth:(int)w;
-(void) setHeight:(int)h;
-(int) width;
-(int) height;
-(void) area;
-(void) perimeter;
@end

@implementation Rectangle
{
int width;
int height;
//int area;
//int perimeter;
}
-(void) setWidth:(int)w
{
width =w;
}
-(void) setHeight:(int)h
{
height =h;
}
-(int) width
{
return width;
}
-(int) height
{
return height;
}
-(void) area
{
NSLog(@"%i",width*height);
}
-(void) perimeter
{
NSLog(@"%i",(width+height)/2);
}
@end

int main(int argc, const char * argv[]) {
@autoreleasepool {
Rectangle *newRec=[[Rectangle alloc]init];
[newRec setWidth : 2];
[newRec setHeight : 8];
NSLog(@"面积为");
[newRec area];
NSLog(@"周长为");
[newRec perimeter];
}
return 0;
}
//
//  main.m
//  86页Calculator计算器
//
//  Created 15/3/31.
//  Copyright (c) 2015年  All rights reserved.
//

#import <Foundation/Foundation.h>
@interface Calculator:NSObject
//累加方法
-(void) setAccumulator:(double) value;
-(void) clear;
-(double) accumulator;
//算术方法
-(double) add: (double) value;
-(double) subtract: (double) value;
-(double) multiply: (double) value;
-(double) divide: (double) value;
//第9题添加类
-(double) changeSign;//改变累加器的正负号
-(double) reciprocal;//累加器
-(double) xSquared;//累加器的平方
//第10 题添加存储功能
-(double) memoryClear;//清理内存
-(double) memoryStore;//设置内存为累加器
-(double) memoryRecall;//设置累加器到内存
-(double) memoryAdd:(double) value;//添加值到内存
-(double) memorySubtract:(double) value;//与内存的值相减
@end

@implementation Calculator
{
double accumulator;
double memory;
}
-(void) setAccumulator:(double) value
{
accumulator=value;
}
-(void) clear
{
accumulator =0;
}
-(double) accumulator
{
return accumulator;
}
//算术方法
-(double) add: (double) value
{
accumulator+=value;
return accumulator;
//NSLog(@"add:%g",accumulator);
}
-(double) subtract: (double) value
{
accumulator-=value;
return accumulator;
}
-(double) multiply: (double) value
{
accumulator *=value;
return accumulator;
}
-(double) divide: (double) value
{
accumulator /=value;
return accumulator;
}
-(double) changeSign    //改变累加器的正负号
{
accumulator = -(accumulator);
return accumulator;
}
-(double) reciprocal    //累加器
{
return accumulator;
}
-(double) xSquared      //累加器的平方
{
accumulator *=accumulator;
return accumulator;
}
//第10 题添加存储功能
-(double) memoryClear   //清理内存
{
accumulator=memory;
memory =0.0;
return accumulator;
}
-(double) memoryStore   //设置内存为累加器
{
memory=accumulator;
return accumulator;
}
-(double) memoryRecall   //设置累加器到内存
{
accumulator=memory;
return accumulator;
}

-(double) memoryAdd:(double) value    //添加值到内存
{
memory +=value;
accumulator=memory;
return accumulator;
}
-(double) memorySubtract:(double) value   //与内存的值相减
{
memory -=value;
accumulator=memory;
return accumulator;
}
@end
int main(int argc, const char * argv[]) {
@autoreleasepool {
Calculator *deskCalc=[[Calculator alloc]init];
[deskCalc setAccumulator:100.0];
[deskCalc add:200.0];
[deskCalc divide:15.0];
[deskCalc subtract:10.0];
[deskCalc multiply:5.0];
[deskCalc changeSign];
[deskCalc reciprocal];
[deskCalc xSquared];
[deskCalc memoryClear];
[deskCalc memoryStore];
[deskCalc memoryRecall];
NSLog(@"The result is %g",[deskCalc accumulator]);
NSLog(@"The result is %g",[deskCalc memoryAdd:2.0]);
NSLog(@"The result is %g",[deskCalc memorySubtract:1.0]);
}
return 0;
}


新手,编写如有纰漏,敬请指正!谢谢!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: