程式舉例
舉例1
(在VC6.0中運行通過)
#include <stdio.h>#include <math.h>int main(void){ float number = -1234.0; printf("number:%fabsolutevalue:%f\n", number, fabs(number)); return 0;}
舉例2
(在TC2.0中運行通過)
//fabs.c#include<math.h>main(){ float x; clrscr();//clearscreen textmode(0x00);//6linesperLCDscreen x=-74.12; printf("|%f|=%f\n",x,fabs(x)); x=0; printf("|%f|=%f\n",x,fabs(x)); x=74.12; printf("|%f|=%f\n",x,fabs(x)); getchar(); return0;}
套用
程式判數濾波 採樣的信號,如因常受到隨機干擾感測器不穩定而引起嚴重失真時,可以採用此方法。方法是:根據生產經驗確定兩交採樣允許的最大偏差△×,若先後兩次採樣的信號相減數值大於△×,表明輸入的是干擾信號,應該去掉;用上次採樣值作為本次採樣值,若小於、等於△×表明沒有受到干擾,本次採樣值有效。該方法適用於慢變化的物理參數的採樣,如溫度、物理位置等
測量系統。
程式判斷濾波的C程式函式如下:
floatprogram_detect_filter(floatold_new_value[],floatX){floatsample_value;if(fabs(old_new_value[1]_old_new_value[0])>X)sample_value=old_new_value[0];elsesample_value=old_new_value[1];return(sample_value);}
函式調用需一個一維的兩個元素的
數組(old_new_value[2],用於存放上次採樣值(old_new_value[0],)和本次採樣值(old_new_value[1],),函式中sample_value表示有效採樣值,X表示根據根據經驗確定的兩次採樣允許的最大偏差△×。