Variable identifier expected is because you put 'var' in the parameters of the function, and you're passing it a constant.
Or you remove the var part, or pass it variables to power function.
Español:
Los parametros 'var' sirven para modificarlos adentro de la función.
Aprendiste ya parámetros por copia y por referencia?
Por copia es sin var
function algo(a, b: integer)
Lo que vos le pases en a y b son constantes: por ejemplo una formula, se evalúa y se pasa su valor resultado, si le pasas una variable se copia el valor y se pasa.
Por referencia es con var, es pasar el puntero
function algo(var a, b: integer)
Si modificas dentro de la función a o b ese valor cambia la variable original que vos le pasaste.
Por ejemplo
var
a: integer;
...
numero := 10;
algo(numero)
function algo(var a: integer): integer;
begin
a := 12; // ahora 'numero' vale 12 adentro y afuera de la función
end;
en cambio si sacas var, al cambiar adentro de la función, solo cambia ahí adentro, no se modifica la variable que le pasaste.