3个回答
展开全部
假如你要的是计算机的算法,可以参考的有很多,比如冒泡排序、快速排序、分组排序等等等等,可以查看算法的相关书籍。
假如你是说,要用加减乘除、指数对数、取绝对值等等将最大的数表示出来,可以做如下考虑。
首先两个数a1和a2的情形,容易验证 (a1+a2+|a1-a2|)/2 是这两个数里面比较大的数。
对于三个数a1、a2、a3的情形,t = (a1+a2+|a1-a2|)/2 是a1和a2中比较大的数,那么用刚才的方法可以求出t和a3中比较大的数是(t+a3+|t-a3|)/2,为了防止写起来太乱,我就不把t代进去了。
这样可以递推地写出10个数里面最大的数。当然,这样求出来的结果在形式上关于这10个数不对称。目前对于不少于3个数的情况我想不出一个比较对称的式子。
假如你是说,要用加减乘除、指数对数、取绝对值等等将最大的数表示出来,可以做如下考虑。
首先两个数a1和a2的情形,容易验证 (a1+a2+|a1-a2|)/2 是这两个数里面比较大的数。
对于三个数a1、a2、a3的情形,t = (a1+a2+|a1-a2|)/2 是a1和a2中比较大的数,那么用刚才的方法可以求出t和a3中比较大的数是(t+a3+|t-a3|)/2,为了防止写起来太乱,我就不把t代进去了。
这样可以递推地写出10个数里面最大的数。当然,这样求出来的结果在形式上关于这10个数不对称。目前对于不少于3个数的情况我想不出一个比较对称的式子。
展开全部
不知道你是用数学上的纯算法呢,还是要一些计算机语言的算法
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用数组会快一些
基本思想:t=a1,然后和a2比较,若比a2小就换成a2,继续……
程序:
DIM a(10)
i =1
DO
INPUT a(i)
i = i+1
LOOP UNTIL i = 11
i = 1
t = a(1)
DO
i = i+1
IF t < a(i) THEN
t = a(i)
END IF
LOOP UNTIL i = 10
PRINT t
END
基本思想:t=a1,然后和a2比较,若比a2小就换成a2,继续……
程序:
DIM a(10)
i =1
DO
INPUT a(i)
i = i+1
LOOP UNTIL i = 11
i = 1
t = a(1)
DO
i = i+1
IF t < a(i) THEN
t = a(i)
END IF
LOOP UNTIL i = 10
PRINT t
END
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询