2016-12-17 41 views
-1

有人能告訴我爲什麼我的代碼拋出:無效的過程或函數引用 - 帕斯卡爾

Error: Invalid procedure or function reference - Pascal

PROGRAM ITVS_19_1; 
TYPE FUNC = FUNCTION(x:REAL):REAL; 
VAR a, b, k1, k2:REAL; 

FUNCTION f(x:REAL):REAL; 
BEGIN 
    f:=SQR(COS(x))-2/35*COS(x)-1/35; 
END; 

FUNCTION g(x:REAL):REAL; 
BEGIN 
    g:=SQR(COS(x))-2/5*COS(x)-1/25; 
END; 

FUNCTION PYB(f:FUNC; a, b, C:REAL):REAL; 
BEGIN 
    WHILE ABS(F(a) - F(b)) > 0.00001 DO 
    BEGIN 
    c:=(a+b)/2; 
    IF (f(a)*f(c)) < 0 THEN 
     b:=c 
    ELSE 
     a:=c; 
    END; 
    PYB:=(a+b)/2; 
END; 
  
BEGIN 
    READ(a, b); 
    k1:=PYB(f, a, b); 
    k2:=PYB(f, a, b); 
    WRITELN('f-funksiya', k1); 
    WRITELN('g-funksiya', k2); 
END. 

回答

1

功能PYB聲明:

FUNCTION PYB(f:FUNC; a, b, C:REAL):REAL; 

這一程序的調用需要三個REAL參數,而你只傳遞兩個:

k1:=PYB(f, a, b);