程序员人生 网站导航

递归练习之 给出任意浮点数, 找出将小数部分变为整数最小整数值

栏目:综合技术时间:2014-12-24 08:12:30
/********************************************************************************* Copyright (C), 1988⑴999, drvivermonkey. Co., Ltd. File name: Author: Driver Monkey Version: Mail:bookworepeng@hotmail.com qq:196568501 Date: 2014.04.02 Description: 递归练习之 给出任意浮点数, 找出将小数部份变成整数最小整数值 *********************************************************************************/ #include <iostream> #include <sstream> #include <fstream> #include <iostream> #include <iomanip> #include <string> #include <memory.h> #include <thread> #include <stdlib.h> #include <math.h> using namespace std; static int fuction(double x, int guess, double pricision); int main() { double x = 1.5; double y = fuction(x,2,0.0001); cout<<"fuction = " <<y<<endl; cout<<"x * y = "<<x*y<<endl; return 0; } static int fuction(double x, int guess, double pricision) { double y = x * guess; double y_int_part = round(y);//取整数部份 double y_fractional_part = y - y_int_part; //取小数部份 if(fabs(y_fractional_part) <= pricision) { return guess; } int new_guess = guess + 2;//小数变成整数的最小步进是 2 fuction(x, new_guess, pricision); }

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐