• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Batch Hilfe

Status
Für weitere Antworten geschlossen.

Ich5003

Braumeister
Registriert
9 Januar 2012
Beiträge
341
Alter
27
Diamanten
300
Minecraft
ich5003
[GELÖST] Batch Hilfe

Hallo Leute, ich bin mir nicht siher, ob das jetzt okay ist, dass ich das in so einem Forum Frage, aber ich habs mal unter Programmierung geschreiben.

Ich brauche eine Zeichenbegrenzung bei Batch (.bat / .cmd)
Ich habe den Befehl:
set /p Zeichen=Gib hier den ZEichen ein:
Nun kann man ja ber belibig viele zeichen eingeben, als Beispiel so:
Gib hier dein Zeichen ein: abasldkfdslkf
Ich möchte aber, dass man maximal ein Zeichen eingeben kann, bzw. dass eine Zeichenanzahlüberprüfung ausgeführt wird, wenn es mehr zeichen als 1 ist, dann soll eben etwas ausgeführt werden, hat jemand da eine Idee, wie das geht, oder gaht das mit Bacth nicht?

Im Anhang findet ihr das fertige Spiel (Tic-Tac-Toe) einfach von .txt in .bat umbenennen, wenn ihr Fehler findet, oder einen Verbesserungsvorschlag habt, antwortet einfach, danke! ;)

UPDATE:
Ich habe nun auch eine einzelspielerfunktion eingebaut! Der Computer setzt aber noch auf zufallsprinzip, werde ich aber bald auch noch ausbessern!
 

Anhänge

  • Tic Tac Toe.txt
    14,7 KB · Aufrufe: 192
Zuletzt bearbeitet:

Benni1000

Ehemaliges Teammitglied
Ehem. Teammitglied
Registriert
4 Mai 2012
Beiträge
1.396
Diamanten
0
Was heisst inefizient?
Du könntest alle buchstaben überprüfen.

Code:
[COLOR=#FFFFFF][I]set /p x=Gib hier ein Zeichen ein:
[/I][/COLOR]if %x% == "a" goto ok
if %x% == "b" goto ok
if %x% == "c" goto ok
if %x% == "d" goto ok
if %x% == "e" goto ok
if %x% == "f" goto ok
echo Fehler unbekannter buchstabe/zahl oder zu viele buchstaben/zahlen eingegeben!
pause
exit
:ok
echo "Es wurde nur ein Buchstabe eingegeben!"
pause
 

Ich5003

Braumeister
Registriert
9 Januar 2012
Beiträge
341
Alter
27
Diamanten
300
Minecraft
ich5003
Okay, stimmt, das wäre eine Möglichkeit, aber da auch alle sonderzeichen... verfügbar sein sollen, ist das etwas aufwendig, ich habe sowas i.wo schonmal vereinfacht gesehen.
 

Ich5003

Braumeister
Registriert
9 Januar 2012
Beiträge
341
Alter
27
Diamanten
300
Minecraft
ich5003
Des ist schonmal sehr gut, nun wäre es noch schön, dass wenn amn aber mehrere ZEichen eingibt, es nicht einfach gekürtzt wird, sondern am besten, nochmal zurückgeht (goto), sonst wäre das perfekt
 

Crafter213

Braumeister
Registriert
9 August 2012
Beiträge
353
Diamanten
0
Prüf doch, ob das gekürzte gleich der Originaleingabe ist

Wenn nur ein Zeichen eingegeben wurde und auf ein Zeichen gekürzt wurde, wurde ja im Grunde nichts gemacht
-> beides ist das gleiche

Sonst weisst du, dass mehr als ein Zeichen eingegeben wurde.


Hoffe das hilft und funktioniert :)
 

Calenria

Braumeister
Registriert
28 Juli 2012
Beiträge
386
Alter
45
Diamanten
300
Minecraft
Calenria
Des ist schonmal sehr gut, nun wäre es noch schön, dass wenn amn aber mehrere ZEichen eingibt, es nicht einfach gekürtzt wird, sondern am besten, nochmal zurückgeht (goto), sonst wäre das perfekt

Code:
@echo off
:eingabe
set length=0
set /p str=Gib hier den Zeichen ein:
:loop
if defined str (set str=%str:~1%&set /A length += 1&goto loop)
if %length% gtr 1 (echo Parameter zu Lang!&goto :eingabe)
echo Parameter ok!
 

Ich5003

Braumeister
Registriert
9 Januar 2012
Beiträge
341
Alter
27
Diamanten
300
Minecraft
ich5003
Ich habe das jetzt so gelöst:
Code:
:Zeichen1
echo.
echo.
set /p Zeichen1=%Player1%, gib dein Zeichen ein: 
set Test-Zeichen1=%Zeichen1%
set Zeichen1=%Zeichen1:~0,1%
if not %Test-Zeichen1%==%Zeichen1% goto Zeichen1
if not %Zeichen1%==0 if not %Zeichen1%==1 if not %Zeichen1%==2 if not %Zeichen1%==3 if not %Zeichen1%==4 if not %Zeichen1%==5 if not %Zeichen1%==6 if not %Zeichen1%==7 if not %Zeichen1%==8 if not %Zeichen1%==9 goto Zeichen2
echo Dies ist eine Zahl, da diese im Spiel vorkommt kannst du sie nicht verwenden.
ping localhost -n 3 >nul
goto Zeichen1
Das fertige SPIEL (Tic-Tac-Toe) hab ich in den ersten Post als .txt rein, einfach von .txt ind .bat umbenennen!
Wenn ihr Bugs findet, schreibt sie einfach!
 
Status
Für weitere Antworten geschlossen.
Oben