分数的加减乘除 约分 以及比较大小
2014-08-12 23:23
453 查看
.h文件中
@interface Fraction : NSObject @property (nonatomic) NSInteger numerator;//分子 @property (nonatomic) NSInteger denominator;//分母 -(id)initWithNumerator:(NSInteger)numerator denominator:(NSInteger)denominator;//初始化 -(void)reductionOfFraction;//约分 -(Fraction *)add:(Fraction*)fraction;//相加 -(Fraction *)subtract:(Fraction*)fraction;//相减 -(Fraction *)multiply:(Fraction*)fraction;//相乘 -(Fraction *)divide:(Fraction*)fraction;//相除 -(NSComparisonResult)compare:(Fraction*)fraction;//比较
.m文件中
-(id)initWithNumerator:(NSInteger)numerator denominator:(NSInteger)denominator{ self = [super init]; if (self) { self.numerator = numerator; self.denominator = denominator; } return self; } - (NSInteger)getDivisorWithNumber1:(NSInteger)number1 number2:(NSInteger)number2 { NSInteger c = 0; if (number1 < 0) { number1 = -number1; } while (number2 != 0) { c = number1 % number2; number1 = number2; number2 = c; } return number1; } - (void)reductionOfFraction{ NSInteger divisor = [self getDivisorWithNumber1:self.numerator number2:self.denominator]; self.numerator /= divisor; self.denominator /= divisor; }//约分 -(Fraction *)add:(Fraction*)fraction{ Fraction *fra = [[Fraction alloc]init]; fra.numerator = (self.numerator*fraction.denominator) +(fraction.numerator*self.denominator); fra.denominator = self.denominator*fraction.denominator; [fra reductionOfFraction]; return fra; }//相加 -(Fraction *)subtract:(Fraction*)fraction{ Fraction *fra = [[Fraction alloc]init]; fra.numerator = (self.numerator*fraction.denominator) - (fraction.numerator*self.denominator); fra.denominator = self.denominator*fraction.denominator; [fra reductionOfFraction]; return fra; }//相减 -(Fraction *)multiply:(Fraction*)fraction{ Fraction *fra = [[Fraction alloc]init]; fra.numerator = self.numerator*fraction.numerator; fra.denominator = self.denominator*fraction.denominator; [fra reductionOfFraction]; return fra; }//相乘 -(Fraction *)divide:(Fraction*)fraction{ Fraction *fra = [[Fraction alloc]init]; fra.numerator = self.numerator*fraction.denominator; fra.denominator = self.denominator*fraction.numerator; [fra reductionOfFraction]; return fra; }//相除 -(NSComparisonResult)compare:(Fraction*)fraction{ NSInteger a = self.numerator*fraction.denominator; NSInteger b = fraction.numerator*self.denominator; if (a > b) { return NSOrderedDescending; } else if (a < b){ return NSOrderedAscending; }else{ return NSOrderedSame; } }//比较 - (NSString *)description { NSString *str = nil; if (self.numerator%self.denominator == 0) { str = [NSString stringWithFormat:@"%ld", self.numerator/self.denominator]; } else { str = [NSString stringWithFormat:@"%ld/%ld", self.numerator, self.denominator]; } return str; }
main.m文件中
Fraction *fra = [[Fraction alloc]initWithNumerator:2 denominator:6]; Fraction *fra1 = [[Fraction alloc]initWithNumerator:4 denominator:6]; Fraction *addFra = [fra add:fra1]; Fraction *subFra = [fra subtract:fra1]; Fraction *mulFra = [fra multiply:fra1]; Fraction *divFra = [fra divide:fra1]; NSInteger a = [fra compare:fra1];
相关文章推荐
- 创建一个Fraction类(分数)实现分数的加减乘除,比较大小、约分等方法.要求:为类添加属性
- 创建一个Fraction类(分数)实现分数的加减乘除,比较大小、约分等方法。
- OC 创建一个Fraction类(分数)实现分数的加减乘除,比较大小、约分等方法。 要求:为类添加属性
- 如何通过创建一个Fraction类(分数)来实现分数的加减乘除,比较大小、约分等方法(方法的实现部分)
- 创建一个Fraction类(分数)实现分数的加减乘除,比较大小、约分等方法。 要求:为类添加属性
- Fraction类(分数)实现分数的加减乘除, ⽐比较⼤大⼩小、约分等⽅方法
- 创建一个Fraction类(分数)实现分数的加减乘除,比较大小、约分等方法。要求:为类添加属性
- 创建一个Fraction类(分数)实现分数的加减乘除,比较大小、约分等方法。
- js中的加减乘除以及比较大小
- BigDecimal加减乘除以及大小比较
- 第八周-运算符重载-分数类的运算符重载(1)-加减乘除以及大小比较
- 求两个分数的加减乘除,并比较大小
- 【十三】分数的重载,加减乘除以及比较
- 比较两个分数的大小
- 第八周实验报告任务3 实现分数类中的运算符重载,在分数类中可以完成分数的加减乘除,求反,比较6种关系的运算。
- 比较分数的大小
- c++ 分数运算加减乘除大于小于等于显示类以及测试
- OC---分数的加、减、乘、除、比较大小
- android中的时间比较大小以及字符串转换为时间
- Objective c 分数之间的加减乘除 约分,最大公约数