Cześć jestem początkujący w języku Batch i napotkalem na problem w moim małym programie.
wygląda to mniej więcej tak:
@echo off
title John 0.1!
@chcp 852
#daneIA
set imie=John
set nazwisko=Bon
set wiek=25
set zamieszkanie=Rzeszów
set zamieszkanie1=Rzeszowa
set zamieszkanie2=Rzeszowie
set zamieszkanie3=Rzeszowem
set zamieszkanie4=Rzeszowowi
#miastawpolsce
set miasto1=Warszawa
set miasto2=Kraków
#start
:run
cls
echo.
goto sek001
#przywitanie
:sek001
echo.
echo Witaj.
echo.
timeout /t 3 > nul
goto sek002
#Imie
:sek002
echo.
echo Jak masz na imie?
echo.
set /p imieosoby=
echo.
echo Milo cie poznac %imieosoby%.
echo.
echo Ja jestem %imie%.
echo.
timeout /t 3 > nul
goto sek003
#Miasto
:sek003
echo.
echo Jak nazywa sie miasto w ktorym mieszkasz?
echo.
set /p miastoosoby=""
if /I %miastoosoby% equ %miasto1% goto sek003-1
if /I %miastoosoby% equ %miasto2% goto sek003-1
goto coteraz
#miasodobrze
:sek003-1
echo.
echo Ja mieszkam w %zamieszkanie2%.
echo.
timeout /t 3 > nul
goto coteraz
#koniec
:coteraz
echo Jeszcze sie ucze.
timeout /t -1 > nul
No wiec problem mam w sekwencji #Miasto
Gdy wpisuje "Warszawa" albo "Kraków" wszystko działa poprawnie i przekierowuje mnie do "sek003-1"
Jeśli wpisze cokolwiek bez spacji tez wszystko działa poprawnie i przekierowuje mnie do "coteraz"
Problem występuje gdy w odpowiedzi odpisze coś ze spacja np "nie mam miasta" w tedy program bat się zamyka a chce aby każda odpowiedz nie zależnie od tego ile ma słów oddzielonych spacja była przekierowywana do sekcji "coteraz" nie licząc oczywiście słów "Kraków" "Warszawa".
Z góry dziękuje za pomoc.