黑马程序员-两种方法做计算两个圆是否相交

在初步学习OC之后迎来了一道 难度较高的题目,计算两个圆是否相交。

这道题和之前那些编程改错啥的一比真的难度上升很多(对我来说),要先设置Point2D类 然后 再设置Circle类 组合圆心类

说实话这题在没看MJ老师点评之前 自己没法独立完成 我只做到了 程序无错误但是 运行结果就是0 那些参数也都是0也不知道哪错了。只好看了点评的视频才知道是那些对象没创建里面都是空 你就往里面赋值赋不进去啊!貌似是经典错误。。。 

然后MJ老师在后面讲到了Xcode 的高级功能 立马把文件转了高级功能 真的比以前CC -C啥的犀利多了。

这是我做的代码 可以运行但是可能有些地方格式或用法不完善还请大神指正

--------------------------------------------------

Point2D.h   圆心类声明

//  Point2D.h

//  11-计算圆是否相交

//

//  Created by 尚先 on 14-9-30.

//  Copyright (c) 2014 dsx. All rights reserved.

//


/*

 

 5.设计一个类Point2D,用来表示二维平面中某个点

 1> 属性

 * double x

 * double y

 

 2> 方法

 * 属性相应的setget方法

 * 设计一个对象方法同时设置xy

 * 设计一个对象方法计算跟其他点的距离

 * 设计一个类方法计算两个点之间的距离

 

 3> 提示

 * C语言的math.h中有个函数:double pow(double n, double m);计算nm次方

 * C语言的math.h中有个函数:double sqrt(double n);计算根号n的值(对n进行开根)

 

 

 */

#import <Foundation/Foundation.h>


@interface Point2D :NSObject

{

    // 成员变量

   double _x;

   double _y;

}

//xysetter and getter

- (void)setX:(double)x;

- (double)x;


- (void)setY:(double)y;

- (double)y;


- (void)YQsetX:(double)x andY:(double)y;// 同时设置xy

- (double)DeltaDistanceWithOther:(Point2D *)other;// 对象方法计算两点距离

+ (double)DeltaDistancePoint1:(Point2D *)p1 andPoint2:(Point2D *)p2;// 类方法计算两点距离


@end

-----------------------------------------
Point2D.m    圆心类实现

//

//  Point2D.m

//  11-计算圆是否相交

//

//  Created by 尚先 on 14-9-30.

//  Copyright (c) 2014 dsx. All rights reserved.

//


#import "Point2D.h"

#import <math.h>

@implementation Point2D

- (void)setX:(double)x

{

   _x = x;

}

- (double)x;

{

   return _x;

}


- (void)setY:(double)y

{

   _y = y;

}

- (double)y;

{

   return _y;

}

// 同时设置xy

- (void)YQsetX:(double)x andY:(double)y

{

    [selfsetX:x];

    [selfsetY:y];

}

// 对象方法计算两点距离

- (double)DeltaDistanceWithOther:(Point2D *)other

{

    //

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值