エジプトの分数 Egyptian fractions
改訂新版 C言語による標準アルゴリズム事典をSwiftでコーディング
アルゴリズム
エジプトの分数 Egyptian fractions
実行
Command Line
コード
import Foundation /// 入力 /// - parameter メッセージ /// - returns 入力文字列 func input(msg:String = "") -> String { print(msg, separator: "", terminator: "") let indata = FileHandle.standardInput; let rawdata = indata.availableData; let str = NSString(data: rawdata, encoding: String.Encoding.utf8.rawValue); let length = str?.length let result = str?.substring(with: NSRange(location: 0,length: length! - 1)) return result! } var m = Int(input(msg: " 分子 m = "))! var n = Int(input(msg: " 分母 n = "))! print("\(m)/\(n) = ") var q:Int while n % m != 0 { q = n / m + 1 print("1/\(q) + ") m = m * q - n n *= q } print("1/\(n / m)")