2017-09-27 1 views
1

안녕하세요 저는 프로그래밍에 익숙하지 않습니다. 내가 실수를 저질렀다는 것을 알게되면 혼자서 배우고 있습니다. 3 개의 숫자를 넣을 수있는 배치로 프로그램을 만들려고합니다.이 프로그램은 당신이 그 비율 (1cm 2cm와 3cm와 같은)으로 삼각형을 만들 수있는 날씨를 알려주며 사용법에 문제가 있습니다. <,> (2> 1 2는 1보다 큽니다.) 어떻게 배치에서보다 큰 것을 사용할 수 있습니까?
누군가가 내가 프로그래밍에 대한 지식이 거의 없어도 이해할 수있는 방법으로 해답을 설명 할 수 있다면 고맙겠습니다. 도움에 감사드립니다!배치 파일의 삼각형 부등식 정리

@echo off 
mode 1000 

color a0 

goto block1 

:block1 

set /p input1= 
set /p input2= 
set /p input3= 

pause 
if %input1% + %input2% << %input3% goto invalid 
if %input1% + %input3% << %input2% goto invalid 
if %input2% + %input3% << %input1% goto invalid 
if %input1% + %input2% == %input3% goto invalid 
if %input1% + %input3% == %input2% goto invalid 
if %input2% + %input3% == %input1% goto invalid 
goto valid 


:valid 
echo this triangle is valid 
pause 
goto block1 


:invalid 
echo this triangle is invalid 
pause 
goto block1 
+2

'SET/A'로만 수학을 수행 할 수 있습니다. 'SET'과'IF' 명령에 대한 도움말을 읽으십시오. 그들은 이해하기 쉽습니다. – Squashman

답변

3

IF 명령 구문을 확인하십시오. 수표가있는 경우 수태 연산을 수행 할 수 없으므로 추가 변수가 필요합니다 (set /a도 확인하십시오). 또한 작거나 같음 (LEQ)을 사용하여 코드를 줄일 수 있습니다.

@echo off 
mode 1000 

color a0 

goto block1 

:block1 

set /p input1= 
set /p input2= 
set /p input3= 

set /a sum1=input2+input3 
set /a sum2=input1+input3 
set /a sum3=input1+input2 
pause 
if %sum3% LEQ %input3% goto invalid 
if %sum2% LEQ %input2% goto invalid 
if %sum1% LEQ %input1% goto invalid 

goto valid 


:valid 
echo this triangle is valid 
pause 
goto block1 


:invalid 
echo this triangle is invalid 
pause 
goto block1 
+1

그 유형이 sum3에 있습니까? – Squashman

+0

@ 스쿼시 맨 - 예. 감사합니다. – npocmaka