#pragma mark ----兩個數(shù)相加-----------
+(NSString *)calculateByadding:(NSString *)number1 secondNumber:(NSString *)number2
{
NSDecimalNumber *num1 = [NSDecimalNumber decimalNumberWithString:number1];
NSDecimalNumber *num2 = [NSDecimalNumber decimalNumberWithString:number2];
NSDecimalNumber *addingNum = [num1 decimalNumberByAdding:num2];
return [addingNum stringValue];
}
#pragma mark ----兩個數(shù)相減------------ number1 - number2
+(NSString *)calculateBySubtractingMinuend:(NSString *)number1 subtractorNumber:(NSString *)number2
{
NSDecimalNumber *num1 = [NSDecimalNumber decimalNumberWithString:number1];
NSDecimalNumber *num2 = [NSDecimalNumber decimalNumberWithString:number2];
NSDecimalNumber *addingNum = [num1 decimalNumberBySubtracting:num2];
return [addingNum stringValue];
}
#pragma mark ----兩個數(shù)相乘------------
+(NSString *)calculateByMultiplying:(NSString *)number1 secondNumber:(NSString *)number2
{
NSDecimalNumber *num1 = [NSDecimalNumber decimalNumberWithString:number1];
NSDecimalNumber *num2 = [NSDecimalNumber decimalNumberWithString:number2];
NSDecimalNumber *multiplyingNum = [num1 decimalNumberByMultiplyingBy:num2];
return [multiplyingNum stringValue];
}
#pragma mark ----兩個數(shù)相除------------
+ (NSString *)calculateByDividingNumber:(NSString *)number1 secondNumber:(NSString *)number2
{
NSDecimalNumber *num1 = [NSDecimalNumber decimalNumberWithString:number1];
NSDecimalNumber *num2 = [NSDecimalNumber decimalNumberWithString:number2];
NSDecimalNumber *dividingNum = [num1 decimalNumberByDividingBy:num2];
return [dividingNum stringValue];
}
#pragma mark ----四舍五入------------
+ (NSString *)calculateTargetNumber:(NSString *)targetNumber ByRounding:(NSUInteger)scale
{
NSDecimalNumberHandler * handler = [[NSDecimalNumberHandler alloc] initWithRoundingMode:NSRoundPlain scale:scale raiseOnExactness:NO raiseOnOverflow:YES raiseOnUnderflow:YES raiseOnDivideByZero:YES];
NSDecimalNumber *num1 = [NSDecimalNumber decimalNumberWithString:targetNumber];
NSDecimalNumber *roundingNum = [num1 decimalNumberByRoundingAccordingToBehavior:handler];
return [roundingNum stringValue];
}
#pragma mark ----是否相等------------
+ (BOOL)calculateIsEqualNumber:(NSString *)number1 secondNumber:(NSString *)number2
{
NSDecimalNumber *num1 = [NSDecimalNumber decimalNumberWithString:number1];
NSDecimalNumber *num2 = [NSDecimalNumber decimalNumberWithString:number2];
NSComparisonResult result = [num1 compare:num2];
if (result == NSOrderedSame) {
return YES;
}
return NO;
}
#pragma mark ----是否大于------------
+ (BOOL)calculateNumber: (NSString *)number1 IsGreaterThan:(NSString *)number2
{
NSDecimalNumber *num1 = [NSDecimalNumber decimalNumberWithString:number1];
NSDecimalNumber *num2 = [NSDecimalNumber decimalNumberWithString:number2];
NSComparisonResult result = [num1 compare:num2];
if (result == NSOrderedDescending) {
return YES;
}
return NO;
}
#pragma mark ----是否小于------------
+ (BOOL)calculateNumber:(NSString *)number1 IsLessThan:(NSString *)number2
{
NSDecimalNumber *num1 = [NSDecimalNumber decimalNumberWithString:number1];
NSDecimalNumber *num2 = [NSDecimalNumber decimalNumberWithString:number2];
NSComparisonResult result = [num1 compare:num2];
if (result == NSOrderedAscending) {
return YES;
}
return NO;
}
#pragma mark --10指數(shù)運算--------
+(NSString *)calculateTargetNumber:(NSString *)number1 ByRonding:(short)power
{
NSDecimalNumber * balanceNumber = [[NSDecimalNumber alloc]initWithString:number1];
NSDecimalNumber * ehNumber = [balanceNumber decimalNumberByMultiplyingByPowerOf10:-power];
return [ehNumber stringValue];
}
#pragma mark ---------單純保留小數(shù)位數(shù)----------
+(NSString *)calculateRetainedDecimalNumber:(NSString *)targetNumber ByRonding:(short)power
{
NSDecimalNumber * balanceNumber = [[NSDecimalNumber alloc]initWithString:targetNumber];
NSDecimalNumberHandler * hander = [NSDecimalNumberHandler decimalNumberHandlerWithRoundingMode:NSRoundDown scale:4 raiseOnExactness:NO raiseOnOverflow:NO raiseOnUnderflow:NO raiseOnDivideByZero:NO];
NSNumber *changeNumber = [balanceNumber decimalNumberByRoundingAccordingToBehavior:hander];
return [changeNumber stringValue];
}
ios 加減乘除
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門肌幽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來晚碾,“玉大人,你說我怎么就攤上這事喂急「襦遥” “怎么了?”我有些...
- 文/不壞的土叔 我叫張陵廊移,是天一觀的道長糕簿。 經(jīng)常有香客問我,道長狡孔,這世上最難降的妖魔是什么懂诗? 我笑而不...
- 正文 為了忘掉前任,我火速辦了婚禮步氏,結(jié)果婚禮上响禽,老公的妹妹穿的比我還像新娘。我一直安慰自己荚醒,他們只是感情好芋类,可當(dāng)我...
- 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著界阁,像睡著了一般侯繁。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上泡躯,一...
- 文/蒼蘭香墨 我猛地睜開眼雌贱,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了偿短?” 一聲冷哼從身側(cè)響起欣孤,我...
- 正文 年R本政府宣布幔妨,位于F島的核電站鹦赎,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏误堡。R本人自食惡果不足惜古话,卻給世界環(huán)境...
- 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望锁施。 院中可真熱鬧陪踩,春花似錦、人聲如沸悉抵。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽姥饰。三九已至傻谁,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間列粪,已是汗流浹背审磁。 一陣腳步聲響...
推薦閱讀更多精彩內(nèi)容
- 關(guān)于數(shù)學(xué)啟蒙,大約半年前我寫過一篇反思文氯质,簡述自己差點扼殺孩子學(xué)習(xí)數(shù)學(xué)興趣的募舟。如何扼殺孩子的學(xué)習(xí)興趣(親身實踐) ...