進(jìn)制轉(zhuǎn)換

//反轉(zhuǎn)字符串

+ (NSString*)fanZhuan:(NSString*)str{

unsignedlonglen;

len = [strlength];

unichara[len];

for(inti =0; i < len; i++)

{

unicharc = [strcharacterAtIndex:len-i-1];

a[i] = c;

}

return[NSStringstringWithCharacters:alength:len];

}

//十進(jìn)制轉(zhuǎn)二進(jìn)制

+ (NSString*)toBinarySystemWithDecimalSystem:(NSString*)decimal With:(int)length

{

NSString* temStr =@"";

NSString* result =@"";

intnum = [decimalintValue];

intremainder =0;//余數(shù)

intdivisor =0;//除數(shù)

while(true)

{

remainder = num%2;

divisor = num/2;

num = divisor;

temStr = [temStrstringByAppendingFormat:@"%d",remainder];

if(divisor ==0)

{

break;

}

}

for(inti = (int)(temStr.length-1); i >=0; i --)

{

result = [resultstringByAppendingFormat:@"%@",

[temStrsubstringWithRange:NSMakeRange(i ,1)]];

}

if(result.length<= length)

{

NSMutableString*b = [[NSMutableStringalloc]init];;

for(inti =0; i < length - result.length; i++)

{

[bappendString:@"0"];

}

return[selffanZhuan:[bstringByAppendingString:result]];

}

else

{

return[selffanZhuan:result];

}

}

//二進(jìn)制轉(zhuǎn)十進(jìn)制

+ (NSString*)toDecimalSystemWithBinarySystem:(NSString*)binary

{

NSString* temStr = [selffanZhuan:binary];

intll =0;

inttemp =0;

for(inti =0; i < temStr.length; i ++)

{

temp = [[temStrsubstringWithRange:NSMakeRange(i,1)]intValue];

temp = temp *powf(2, temStr.length- i -1);

ll += temp;

}

NSString* result = [NSStringstringWithFormat:@"%d",ll];

returnresult;

}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容