返回列表 发帖
本帖最后由 mxxcgzxxx 于 2011-7-1 16:16 编辑
set /a a*=(a*=(a*=(a=11)))*11*11*11COPY
原理是递归,第一层11,第二层11*11,第三层(11*11)*(11*11)
所以a*=(a*=(a*=(a=11)))就是8个11相乘了,加乘三个11就行了
写简单了,但要口算更长时间才能写出算式呵
2

评分人数

世界上没有学不会的知识,也没有想得到却做不到的事!

TOP

5# ArdentMan

你是要求某数的幂次方吧,那要用另一个公式来算这个数是2的几次方余多少的问题
世界上没有学不会的知识,也没有想得到却做不到的事!

TOP

本帖最后由 mxxcgzxxx 于 2011-7-1 17:17 编辑

7# ArdentMan

不只是循环12次的原因还有每次都是自己的平方,第一次之后就全错了


将自己的再次简化下
set /a c*=(c*=(c*=(c=11)))*c/11COPY
世界上没有学不会的知识,也没有想得到却做不到的事!

TOP

本帖最后由 mxxcgzxxx 于 2011-7-1 20:49 编辑

我也想找到通用编码,不过试了下没发现,可能是能力有限或转不过弯来,
你们来找找规律,
本人认为还是把规律放在1,2,3内比较靠谱
比如7=1+2*3=2*2*2-1
能有一个1,2,3的开方规律就好了,看样子要用CALL套
@echo off
:1
set/p p=
:2
::平方原理
set /a a*=(a=p)
echo %a%
:3
::3次方
set /a a*=(a=p)*a
echo %a%
:4
::2次方的平方
set /a a*=(a*=(a=p))
echo %a%
:5
::2次方的平方+1
set /a a*=(a*=(a=p))*p
echo %a%
:6
::2次方的3次方
set /a a*=(a*=(a=p))*a
echo %a%
:7
::4次方的平方-1
set /a a*=(a*=(a*=(a=p)))/p
echo %a%
:8
::4次方的平方
set /a a*=(a*=(a*=(a=p)))
echo %a%
:9
::3次方的平方
set /a a*=(a*=(a=p)*a)
echo %a%
pause>nul
:10
::3次方的平方+1
set /a a*=(a*=(a=p)*a)*p
echo %a%
:11
::4次方的3次方-1
set /a a*=(a*=(a=p)*a)*a/p
echo %a%
:12
::4次方的3次方
set /a a*=(a*=(a=p)*a)*a
echo %a%
pause>nul
goto :1COPY
另PS:意义本身不大啦,因为算不了多少个数的幂次方,因为批处理的计算能力有限,只是一个思路的练习
世界上没有学不会的知识,也没有想得到却做不到的事!

TOP

本帖最后由 mxxcgzxxx 于 2011-7-1 23:26 编辑

只能测试到9所以还不够完善,超出的数太大了无法验证
只要分1,2就行了,原先的1,2,3想法有错,3=2+1
这样就能将规律统一了
世界上没有学不会的知识,也没有想得到却做不到的事!

TOP

返回列表