求餘函式mod和fmod

2021-08-30 02:21:14 字數 929 閱讀 4703

double z = mod(double x, double y); x是數,y是模值

double z = fmod(double x, double y); x是數,y是模值

mod是matlab中的函式,z與y同符號;y為0時返回x

fmod是c++中的函式,z與x同符號;y為0時返回nan

//  x      y    z1            z2                z1  z2

x = 10;y=3;z1 = fmod(x,y);z2 = mod(x,y); // 1 1

x = 10;y=-3;z1 = fmod(x,y);z2 = mod(x,y);// 1   -2
x = -10;y=3;z1 = fmod(x,y);z2 = mod(x,y); // -1  2
x = -10;y=-3;z1 = fmod(x,y);z2 = mod(x,y);// -1 -1
x = 10;y=0;z1 = fmod(x,y);z2 = mod(x,y); // -nan 10
x = 0;y=0;z1 = fmod(x,y);z2 = mod(x,y);  // -nan 0
x = -10;y=0;z1 = fmod(x,y);z2 = mod(x,y);// -nan -10
參考:

1) % 運算子

% 只用於整型的計算,後乙個數不能是0,參與運算的資料可正可負。

2) fmod()函式

fmod()函式可以對浮點型資料進行取模運算,後乙個數可為0,這時函式返回nan。

fmod 函式和modf 函式

標頭檔案 includec庫函式 fmod 用來對浮點數進行取模 求餘 原型為 float fmod float x 設x k n h,則返回值為h h和x的符號相同 fmod 與求模運算子 的比較 1 只用於整型的計算,後乙個數不能為0 fmod 可以對浮點型資料進行取模運算,後乙個數可以為0,返...

matlab的rem 和mod 函式

rem x,y 求整除x y的餘數 mod x,y 求模 rem x,y x y.fix x.y fix 向0取整 mod x,y x y.floor x.y floor 向左取整,以數抽為準,朝負無窮方向取整 如果x和y的符號相同 同為 同為 那麼rem x,y mod x,y 正數與正數,負數與...

取餘數 取餘函式和取整函式的關係

論求餘函式和取整函式的關係 1.下面兩函式相等,不言自明。2.當 b 大於 a ab大於0時,無論b是什麼,函式值都為a,顯然成立。被除數是自變數時的取餘函式,介紹一下,內定商是整數,函式值是被除數除以除數後,商為最大整數時得到的餘數。然而,經過我靈光一閃之後發現取餘函式 被除數取自變數 能用取整函...