作爲計算器應用程序的一部分,我試圖用sigma符號實現用法。但是,打印出來的結果總是小數,其餘部分並不重要。我只是想把小數改成小數。將Objective-C中的小數轉換爲小數(有理數)?
我已經有減少的功能,我在從這樣的小數得到的問題:它「0.96875」的分數值,'31/32'
謝謝! PS:我已經研究過一切,對於我的生活,我無法弄清楚這一點。我現在需要的是如何從中取出十進制數,然後我可以減少它。
這裏是我的reduce方法:
-(void)reduce {
int u = numerator;
int v = denominator;
int temp;
while (v != 0) {
temp = u % v;
u = v;
v = temp;
}
numerator /= u;
denominator /= u;
}
我想象中的目標是「字符串表示」雖然對於代表一小部分的數據類型的名稱往往是「理性的」(見[有理數](HTTP:// en.wikipedia.org/wiki/Rational_number))。使用它可以幫助改進搜索,例如google給了我[RCRationalNumber](http://rosettacode.org/wiki/Arithmetic/Rational/Objective-C),它有'initWithDouble'。 – 2012-04-19 17:56:40
這是一個*相關的*問題:http://stackoverflow.com/questions/5552537/convert-decimal-to-fraction-in-objective-c顯示如何在C中完成它。但是,我沒有關閉一個複製品,因爲可能會有「更多Obj-C方式」。然而,接受的答案在鏈接上相當不錯。 – 2012-04-19 18:02:29
在詢問之前,我對上述問題進行了研究,這正是我所問的原因,我希望看到「更多obj-c方式」 – JTApps 2012-04-19 18:03:35