?? 用批處理解決數學問題.txt
字號:
#序號 !解決 ?未解決
#01 !
求水仙花數?
#02 !
有四個數,其中任意三個數相加,所得的和分別是84,88,99,110,求這四個數?
#03 !
趙姑娘的歲數有以下特點:
1. 它的3次方是一個四位數,而4次方是一個六位數;
2. 這四位數和六位數正好是0到9這十個數字組成.
問,這個數應該是什么數?
#04 !
排一本辭典的頁碼共用了4889個數字。這本辭典共有多少頁? 答案:1499
#05 !
阿聰說他這次去西北看見一群駱駝,共有23個駝峰,60只腳。請問單、雙峰駱駝各多少只?
#06 !
有一個五位奇數,將這個五位奇數中的所有2都換成5,所有5也都換成2,其他數保持不變,得到一個新的五位數,若新五位數的一半仍比原五位數大1,那么原五位數是多少?
#07 !
五個連續自然數的和分別能被2、3、4、5、6整除,求滿足此條件的最小的一組數。
#08 !
我是個三位數,其中有一個數字是“3”,還有一個數字是“1”,另一個數字是未知數。如果把“3”變成“4”、把“1”變成“3”,那么,原來的我將比假設后的我的一半還少“9”。你知道原來是個什么數?
#09 ?
農夫瓊斯對他老婆說:"喂,瑪麗亞,如果照我的辦法,賣掉75只小雞,那么咱們的雞飼料還能維持20夭。然而,假使照你的建議,再買進100只小雞的話,那么雞飼料將只夠維持15天。"
"啊,親愛的,"她答道,"那我們現在有多少只小雞呢?"
問題就在這里了,他們究竟有多少只小雞?
#10 !
在所有的5位數當中,只包含兩個3的數字有多少個?
#11 !
將17分成幾個自然數的和,求這幾個自然數的最大乘積是多少?
#12 ?
將自然數2、3......乘到一起,它們的積的最后6位數恰好都是0,最后一個自然數最少可能是幾?
#13 !
被除數、除數和商三個數的和是181,商是12,求被除數。
#14 ?
商店里有六箱貨物,分別重15、16、18、19、20、31千克,兩個顧客買走了其中五箱.已知一個顧客買的貨物重量是另一個顧客的2倍,那么,商店剩下的一箱貨物重量是多少千克?
#15 ?
一個數除以3的余數是2,除以5的余數是1,則這個數除以15的余數是多少?
#16 ?
1. p是質數,且p×p+1也是質數。求2006×p。
2. 2006個2的乘積除以7的余數是多少。
========================================================================================
解決代碼
========================================================================================
【01】by [lxmxn]
========================================================================================
@echo off&&setlocal ENABLEDELAYEDEXPANSION
for %%a in (1 2 3 4 5 6 7 8 9) do (
for %%b in (0 1 2 3 4 5 6 7 8 9) do (
for %%c in (0 1 2 3 4 5 6 7 8 9) do (
set/a result=%%a*%%a*%%a+%%b*%%b*%%b+%%c*%%c*%%c
if "!result!"=="%%a%%b%%c" (
echo %%a%%b%%c是水仙花數!
)
)
)
)
pause
========================================================================================
【02】by [lxmxn]
========================================================================================
========================================================================================
【03】by [youxi01]
========================================================================================
@echo off
setlocal enabledelayedexpansion
for /l %%i in (10 1 30) do (
::清空變量
set flag=
for /l %%a in (0 1 9) do set %%a=
::取得立方和四次方
set /a cube=%%i*%%i*%%i
set /a s=!cube!*%%i
if !cube! geq 1000 if !cube! lss 10000 (
if !s! geq 100000 if !s! lss 1000000 (
set num=!s!!cube!
call :test !num!
if not defined flag echo %%i !num!
)
)
)
pause>nul
:test
for /l %%a in (0 1 9) do (
set var=%1
::將參數的第一個數字賦值給var_;檢查變量值!var_!是否已經被作為變量被定義。
set var_=!var:~%%a,1!
if defined !var_! set flag=1 & goto :eof
set !var_!=A
)
========================================================================================
【04】by [youxi01]
========================================================================================
@echo off
set /a t_num=0
setlocal enabledelayedexpansion
echo 正在檢測數據.....
for /l %%i in (1 1 4889) do (
if !t_num! lss 4889 (
if %%i lss 10 set /a t_num+=1
if %%i geq 10 if %%i lss 100 set /a t_num+=2
if %%i geq 100 if %%i lss 1000 set /a t_num+=3
if %%i geq 1000 set /a t_num+=4
) else set /a num=%%i-1 & goto :exit
)
:exit
echo 要求的數為:%num%
pause>nul
========================================================================================
【05】by [youxi01]
========================================================================================
@echo off
set /a F_num=23
set /a J_num=60/4
setlocal enabledelayedexpansion
for /l %%i in (1 1 %J_num%) do (
set /a S_num=%%i
set /a B_num=%J_num%-%%i
set /a num=!S_num!+2*!B_num!
call :test !num! !S_num! !B_num!
)
pause>nul
:test
if %1 EQU %F_num% echo 可能的組合為:單峰數目=%2 雙峰數目=%3
goto :eof
========================================================================================
【06】by [youxi01]
========================================================================================
::答案是:29995。
@echo off & echo 正在檢測數據...
setlocal enabledelayedexpansion
for /l %%a in (0 1 9) do (
for /l %%b in (0 1 9) do (
for /l %%c in (0 1 9) do (
set/a Fnum=2%%a%%b%%c5
set Bnum=!Fnum:5=A!
set Bnum=!Bnum:2=5!
set/a Bnum=!Bnum:A=2!
set/a Fnum_=2*!Fnum!+2
if !Bnum! EQU !Fnum_! echo !Fnum!
)))
echo 檢測完畢!
pause>nul
::說明:該程序在XP pro sp2下測試通過。
::解決這個問題,首先我們要明確這個數字結尾必須是5,因為只有這樣,才可以在轉化后才是偶數,才可以被2整除;而且首位數字必須是::2......
========================================================================================
【07】by [youxi01]
========================================================================================
::答20樓:答案是10 11 12 13 14
@echo off
echo 正在檢測數據....
setlocal enabledelayedexpansion
for /l %%i in (1 1 10000) do (
set /a flag=0
set /a num=5*%%i+10
set /a num1=!num!%%4
set /a num2=!num!%%5
set /a num3=!num!%%6
for %%a in (!num1! !num2! !num3!) do (
if %%a NEQ 0 set /a flag=1
)
if !flag! EQU 0 set /a num=%%i & goto :exit
)
:exit
for /l %%i in (0 1 4) do (
set /a num%%i=%num%+%%i
)
echo 要求的連續的5個自然數為:%num0% %num1% %num2% %num3% %num4%
pause>nul
xp pro sp2下測試通過
========================================================================================
【08】by [youxi01]
========================================================================================
@echo off
rem 經推算,首位數字必須為1,(除非未知數為1,為1的情況在第一個for中也處理了)
setlocal enabledelayedexpansion
for /l %%i in (0 1 9) do (
set /a Fnum=1%%i3
set /a Bnum=3%%i4
set /a num=!Bnum!/2-9
if !Fnum! EQU !num! echo !Fnum!)
for /l %%i in (0 1 9) do (
set /a Fnum=13%%i
set /a Bnum=34%%i
set /a num=!Bnum!/2-9
if !Fnum! EQU !num! echo !Fnum!)
pause>nul
========================================================================================
【09】by [youxi01]
========================================================================================
@echo off
rem 小雞的只數至少有76只:
setlocal enabledelayedexpansion
for /l %%i in (76 1 10000) do (
set /a Fnum=%%i*20-75*20
set /a Bnum=%%i*15+100*15
if !Fnum! EQU !Bnum! echo 小雞的只數為:%%i & goto :exit)
:exit
pause>nul
========================================================================================
【10】by [youxi01]
========================================================================================
@echo off
echo 正在檢測數據........
setlocal enabledelayedexpansion
set /a flag=0
for /l %%i in (10000,1,99999) do (
set num=%%i
rem 前面加個1是為了防止類似30820的特殊情況。
set /a num=1!num:3=!
if !num! lss 2000 if !num! gtr 200 set /a flag+=1)
echo %flag%
echo 檢測完畢!
pause>nul
========================================================================================
【11】by [youxi01]
========================================================================================
::第11題稍微難一點。利用高中的數學知識可以證明,凡是大于等于4的數,它都可以這樣的兩個數,它們
::的和與該數相等,乘積要大于等于該數。根據這樣的推論,所有的數最后都會拆成這樣的形式:
::A*A*A*A....A為2或者3(因為只有2和3不能拆了,最后剩下的肯定只有2和3)。所以我們就可以得到下面
::的代碼:(答案是486,我不知道對不對^-^)
@echo off
setlocal enabledelayedexpansion
set num=17
set /a Cnum=%num%/3
set /a Rnum=%num%%%2
set /a Tnum=0
for /l %%i in (%Rnum% 2 %Cnum%) do (
set num_=1
set /a num_tem=%num%/2-%%i*3/2
for /l %%a in (1 1 %%i) do (
set /a num_*=3)
for /l %%b in (1 1 !num_tem!) do (
set /a num_*=2)
if !num_! gtr !Tnum! set /a Tnum=!num_!
)
echo !Tnum!
pause>nul
========================================================================================
【12】by [youxi01]
========================================================================================
@echo off
echo 正在檢測數據........
setlocal enabledelayedexpansion
set /a num=1
set /a flag=0
for /l %%i in (2 1 10000) do (
call :test %%i
echo %%i !flag!)
:exit
echo 最小的自然數為:!num!
echo.
echo 檢測完畢!
pause>nul
:test
set /a num=!num!*%1
for /l %%i in (1 1 5) do (
if !num:~-1! EQU 0 (set /a flag+=1 & set /a num=!num:~0,-1!) else (
set /a num=!num:~-1! & goto :eof))
========================================================================================
【13】by [youxi01]
========================================================================================
@echo off
echo 正在檢測數據........
setlocal enabledelayedexpansion
for /l %%a in (90 1 180) do (
for /l %%b in (1 1 %%a) do (
set /a num=%%a %% %%b
if !num! EQU 0 (
set /a num=%%a/%%b
set /a num_=!num!+%%a+%%b
if !num_! EQU 181 echo 這樣的數有,被除數:%%a 除數:%%b 商:!num!
)
)
)
echo.
echo 檢測完畢!
pause>nul
========================================================================================
【14】by [lxmxn]
========================================================================================
========================================================================================
【15】by [lxmxn]
========================================================================================
========================================================================================
【16】by [lxmxn]
========================================================================================
========================================================================================
【17】by [lxmxn]
========================================================================================
========================================================================================
【18】by [lxmxn]
========================================================================================
========================================================================================
【19】by [lxmxn]
========================================================================================
========================================================================================
【20】by [lxmxn]
========================================================================================
========================================================================================
【21】by [lxmxn]
========================================================================================
========================================================================================
【22】by [lxmxn]
========================================================================================
========================================================================================
【23】by [lxmxn]
========================================================================================
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -