我正在尝试创建一个程序,该程序具有用户输入3个值,然后程序继续执行并分别用作ax^2+bx+c
中的A,B和C(判别式= D),并为您提供&# 34;溶液"它有(如果D>0
则有2个解决方案,如果D = 0
一个&#34;双&#34;解决方案,如果D < 0
它将显示没有真正的解决方案)。
@echo off
setlocal enabledelayedexpansion
:arxh
cls
echo *****************************************
echo *Theleis na trekseis to programma (Y/N)?*
echo *****************************************
set /p V=
if /I %V%==Y goto start
if /I %V%==N goto end
echo ~~~~~~~~~~~~~~~~~~~~~~~~~
echo ~Kane thn swsth epilogh!~
echo ~~~~~~~~~~~~~~~~~~~~~~~~~
pause
goto arxh
:start
echo --------------------
echo Dwse mou thn timh A:
echo --------------------
set /p A=
echo --------------------
echo Dwse mou thn timh B:
echo --------------------
set /p B=
echo --------------------
echo Dwse mou thn timh C:
echo --------------------
set /p C=
goto calculation
:calculation
set /a D=%B%*%B%-4*%A%*%C%
echo **************************************************************************
echo ----------------------
echo Timh diakrinousas: %D%
echo ----------------------
if %D% LSS 0 goto error
if %D% GTR 0 goto positive
if %D%==0 goto zero
:error
echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo ~Arnhtikh timh diakrinousas! Den uparxoun pragmatikes luseis!~
echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pause
goto arxh
:positive
setlocal enabledelayedexpansion
set count=0
set /p dend=Vale edw thn timh ths diakrinousas:
set num=%dend%
for /l %%i in (%dend%, -1, 1) do (
set /a sqr=%%i*%%i
if !sqr! leq %dend% (
set digit=%%i.
set root=%%i
goto out
)
)
:out
call set /a count+=1
if %count% GTR 5 goto next
set /a dend=(%dend%-%sqr%)*100
set /a div=%root%*2
for /l %%i in (9,-1,0) do (
set /a sqr=%div%%%i*%%i
if !sqr! leq %dend% (
set root=%root%%%i
goto out
)
)
:next
set root=%root:~-5%
if %dend% neq 0 set digit=%digit%%root%
goto results
:results
set /p S=%digit%
set /a Q=(-%B%+%S%)/2*%A%
set /a R=(-%B%-%S%)/2*%A%
echo ----------------------------------------------------
echo H prwth riza einai ~%Q%~ kai h deuterh einai ~%R%~ !
echo ----------------------------------------------------
echo *****************Approximate Value*******************
pause
goto arxh
:zero
set /a Z=-b/2*A
echo -------------------------
echo H diplh riza einai: %Z% !
echo -------------------------
pause
goto arxh
:end
end
我找到了一个用户输入数字的程序,它找到了所述数字的平方根!我转换了代码,因此用户不会输入该数字,而是数字将是判别式(数字A,B和C将在等式中产生)。
无论我怎么努力,我都会遇到missing operants
错误或unbalanced parenthesis
或者它会向我显示判别式的根,但不会在下面的等式中正确使用它。说真的,我被卡住了。
一些帮助将不胜感激!
P.S。不要运行代码片段,我是新来的,所以我使用该工具来显示代码。
无论如何,谢谢你