巧用SGN(E)编程

Author: 广州 耀瑜 Date: 1992-01-10

        1当E 〉0时
        SGN(E)={0当E =0时
        -1当E〈0时
        科学计算中,经常遇到一些形似符号函数的分段函数。始:
        X2+5X-3 X 〉5
        f(x){ -5X       X=5
        -X2+5X+3 X〈5
        对于这类函数,用计算机编程的通常采用的方法是配合条件语句:IF---THEN---,ELSE---”等进行编程。这种方法编写的程序分支较多,易理解,却不易阅读。如果巧妙地引用符号函数“SGN(E)”,必要时配以绝对值函数“ABS(E)”和取整函数“INT(E)”,便能把任何分段函数变成“联式函数”。
        如上式可写成如下形式:F(X)=SGN(X-5)*X^2+5*(2*SGN(ABS(X-5)-1)*X+SGN(5-X)*3
        于是,计算f(x)时,仅用一个赋值语句就行了,大大地缩短了程序的行数。