-1
我不明白:/ 批處理很奇怪。 你能幫我搞定這項工作嗎? 我得到的只是某個東西處於錯誤的位置。 我認爲ifs中的括號是錯誤的。 我嘗試多種組合,但沒有工作:/批處理設置右括號
:init
set ergebniss=
set laufzeit=
set zinssatz=
set skapital=
set i=
set help=
:input1
if NOT (%1)==()(
set /a skapital=%1
set /a zahl=%skapital% + 0
goto input2
if %zahl% neq %skapital% (
cls
echo Ungueltiges Startkapital!
goto startkapital
)
)
:startkapital
cls
echo Geben Sie ein Startkapital ein:
set /p skapital=
set /a zahl=%skapital% + 0
if %zahl% neq %skapital% (
cls
echo Ungueltiges Startkapital!
goto startkapital
)
:input2
if NOT (%2)==() (
set /a zinssatz=%2
set /a zahl=%zinssatz% + 0
goto input3
if %zahl% neq %zinssatz% (
cls
echo Ungueltiger Zinssatz!
goto zinssatz
)
)
:zinssatz
pause
cls
echo Geben sie den Zinssatz ein:
set /p zinssatz=
set /a zahl=%zinssatz% + 0
if %zahl% neq %zinssatz% (
cls
echo Ungueltiger Zinssatz!
goto zinssatz
)
:input3
if NOT (%3)==() (
set /a laufzeit=%3
set /a zahl=%laufzeit% + 0
goto input3
if %zahl% neq %laufzeit% (
cls
echo Ungueltige Laufzeit
goto laufzeit
)
)
:laufzeit
pause
cls
echo Geben sie eine Laufzeit ein:
set /p laufzeit=
set /a zahl=%laufzeit% + 0
if %zahl% neq %laufzeit% (
cls
echo Ungueltige Laufzeit
goto laufzeit
)
:berechne
set ergebniss=%skapital%
setlocal EnableDelayedExpansion
for /L %%i in (1,1,%laufzeit%) do set /a ergebniss=!ergebniss!+!ergebniss!*%zinssatz%/100
:ausgabe
cls
echo Das Kapital nach %laufzeit% Jahren ist %ergebniss%
:wiederhole
echo Wiederholen? [j/n]:
set /p wh=
if "%wh%"=="j" (
cls
goto init)
修改後的代碼:
:init
set ergebniss=
set laufzeit=
set zinssatz=
set skapital=
set i=
set help=
set zahl=
:input1
if NOT (%1)==() (
set /a skapital=%1
set /a zahl=%skapital% + 0
if %zahl% neq %skapital% (
cls
echo Ungueltiges Startkapital!
goto startkapital
)
goto input2
)
:startkapital
cls
echo Geben Sie ein Startkapital ein:
set /p skapital=
set /a zahl=%skapital% + 0
if %zahl% neq %skapital% (
cls
echo Ungueltiges Startkapital!
goto startkapital
)
:input2
if NOT (%2)==() (
set /a zinssatz=%2
set /a zahl=%zinssatz% + 0
if %zahl% neq %zinssatz% (
cls
echo Ungueltiger Zinssatz!
goto zinssatz
)
goto input3
)
:zinssatz
pause
cls
echo Geben sie den Zinssatz ein:
set /p zinssatz=
set /a zahl=%zinssatz% + 0
if %zahl% neq %zinssatz% (
cls
echo Ungueltiger Zinssatz!
goto zinssatz
)
:input3
if NOT (%3)==() (
set /a laufzeit=%3
set /a zahl=%laufzeit% + 0
if %zahl% neq %laufzeit% (
cls
echo Ungueltige Laufzeit
goto laufzeit
)
goto input3
)
:laufzeit
pause
cls
echo Geben sie eine Laufzeit ein:
set /p laufzeit=
set /a zahl=%laufzeit% + 0
if %zahl% neq %laufzeit% (
cls
echo Ungueltige Laufzeit
goto laufzeit
)
:berechne
set ergebniss=%skapital%
setlocal EnableDelayedExpansion
for /L %%i in (1,1,%laufzeit%) do set /a ergebniss=!ergebniss!+!ergebniss!*%zinssatz%/100
:ausgabe
cls
echo Das Kapital nach %laufzeit% Jahren ist %ergebniss%
:wiederhole
echo Wiederholen? [j/n]:
set /p wh=
if "%wh%"=="j" (
cls
goto init)
解決方案:
:input1
if (%1)==() goto startkapital
set /a skapital=%1
set /a zahl=%skapital% + 0
if %zahl% neq %skapital% (
cls
echo Ungueltiges Startkapital!
goto startkapital
)
goto input2
嘿。謝謝你幫我一下。 –
如果我寫這樣的代碼::INPUT1 如果不是(%1)==()( \t集/一個skapital =%1 \t集/一個zahl =%skapital%+ 0 \t如果%zahl% NEQ%skapital%( \t \t CLS \t \t回聲Ungueltiges startkapital! \t \t轉到startkapital \t) \t轉到輸入2 )我得到 「(在這個時候意外」 –
您將需要'edit'這個代碼加入你的問題作爲補充n顯示靈敏度tolayout並且不清楚linebreaks在哪裏。 – Magoo