Pergunta de entrevista da empresa Dassault Systèmes

Write a program using recursive as well as a non-recursive way to calculate the factorial.