Pergunta de entrevista da empresa AVEVA

Write a function in any language to calculate a factorial.