C++中多个数判断求阶乘怎么办?

我的目标是:输入任意十个数,小于十的数阶乘,大于十的数加一,求最大值和最小值。
我的思路:定义一些变量与数组,输入十个数存在数组中,对数组中的数进行判断:当数小于十时,进行阶乘,令变量a=1然后逐步乘到该数,最后进行储存。之后大于十的数进行加一的操作。最后进行比较筛选最大值和最小值
问题:当我进行阶乘时,发现不知道怎么储存,储存之后又不知道怎么比这十个数(主要不清楚阶乘后的数)
运行后的结果也就不符合我的预期
图示如下:

img

可以利用循环语句,可以用for或者while进行,用for循环,定义一个阶乘变量,然后用for循环实现123……n的运算,最后输出结果;用while循环,定义一个阶乘变量,然后定义一个变量i,用while循环实现i(i+1)的运算,最后输出结果。