tein batch ohjelman joka sytyttää lampun makronauhurin ja stellsticin kautta satunnaisen ajan päästä.
ohjelman koodi on tässä:
@echo off
set /a input=%random%
echo %input%
set /a tila=0
:loop
if %tila%==1 goto paalla
if %tila%==0 goto kiinni
:kiinni
echo %input% sekuntia valojen sytytykseen
set /a input=%input% 1
if %input%==X set /a tila=1
start /wait C:\macro\sytyta.mcr
ping localhost -n 2 > nul
cls
goto loop
:paalla
echo %input% sekuntia valojen sammutukseen
set /a input=%input%-1
if %input%==0 set /a tila=0
start /wait C:\macro\sammuta.mcr
ping localhost -n 2 > nul
cls
goto loop
ongelma on että miten saan rivillä 11
if %input%==X set /a tila=1
korvattua X %random% arvolla.
en voi käyttää
if %input%==%random% set /a tila=1
koska se ottaisi %random% arvoksi uuden satunnaisen luvun.
alaspäin ohjelma toimii hyvin
if %input%==0 set /a tila=0
koska silloin %input% vakioarvo on aina 0
ohjelman koodi on tässä:
@echo off
set /a input=%random%
echo %input%
set /a tila=0
:loop
if %tila%==1 goto paalla
if %tila%==0 goto kiinni
:kiinni
echo %input% sekuntia valojen sytytykseen
set /a input=%input% 1
if %input%==X set /a tila=1
start /wait C:\macro\sytyta.mcr
ping localhost -n 2 > nul
cls
goto loop
:paalla
echo %input% sekuntia valojen sammutukseen
set /a input=%input%-1
if %input%==0 set /a tila=0
start /wait C:\macro\sammuta.mcr
ping localhost -n 2 > nul
cls
goto loop
ongelma on että miten saan rivillä 11
if %input%==X set /a tila=1
korvattua X %random% arvolla.
en voi käyttää
if %input%==%random% set /a tila=1
koska se ottaisi %random% arvoksi uuden satunnaisen luvun.
alaspäin ohjelma toimii hyvin
if %input%==0 set /a tila=0
koska silloin %input% vakioarvo on aina 0
Vastaukset 1
Vanhimmat
Laita tuon rivin(3):
"echo %input%"
jälkeen input talteen johonkin toiseen muuttujaan ja käytä sitä toista muuttujaa vertailussa.
t:p