138701
Goto Top

Karten mischen

Hallo zusammen,

Vor kurzen habe ich mit dem Projekt begonnen, Poker in Batch zu programmieren.

Jetzt habe ich schon einiges probiert, doch schaffe es nicht, die Karten zu mischen :/ .

Mein Script bis jetzt:
@echo off&setlocal ENABLEDELAYEDEXPANSION
title Poker ^| DE
color 0B
mode 60,180
set a1=P
set a2=H
set a3=K
set a4=C
set count=1
for /l %%a in (1,1,4) do (
  set k!count!=!a%%a!A
  for /l %%b in (2,1,10) do set /a count+=1&set k!count!=!a%%a!%%b
  for %%b in (J Q K) do set /a count+=1&set k!count!=!a%%a!%%b
  set /a count+=1
)
:: ----------------------------------------------
:begin
cls
set /p multiplayer=Spieleranzahl (2-6): 
if "%multiplayer%"=="" goto begin  
set /a multiplayer=%multiplayer%
if not %multiplayer% GTR 1 if not %multiplayer% LSS 7 goto begin
set /a mkm=5+2*%multiplayer%
echo.
echo Karten werden gemischt...
for /l %%a in (1,1,52) do (
  set /a t%%a=1+52*!random!/32768
  for /l %%b in (1,1,%mkm%) do (
    if not %%a==%%b for /l %%c in (1,1,1000) do if !t%%a!==%%b set /a t%%a=1+52*!random!/32768
  )
  set t%%a=k!t%%a!
)
pause
for /l %%a in (1,1,%mkm%) do (
  echo !t%%a!
)
pause

Content-Key: 460118

Url: https://administrator.de/contentid/460118

Ausgedruckt am: 28.03.2024 um 10:03 Uhr

Mitglied: LeeX01
LeeX01 07.06.2019 um 22:06:46 Uhr
Goto Top
hallo,

warum macht man sowas heute immer noch in Batch? Es gibt schon sehr lange Shells die deutlich mehr Power haben.

Grüße
Mitglied: 138701
138701 07.06.2019 um 22:13:06 Uhr
Goto Top
Komplizierte Aufgaben machen mir mehr Spaß.
Batch ist meine Welt
Mitglied: LeeX01
LeeX01 07.06.2019 um 22:25:22 Uhr
Goto Top
Naja aber wenn wir dir die Lösung sagen ist es doch nicht mehr kompliziert. Ich will dir nicht den Spaß verderben.
Mitglied: 139920
139920 08.06.2019 aktualisiert um 13:11:37 Uhr
Goto Top
Zitat von @138701:
Jetzt habe ich schon einiges probiert, doch schaffe es nicht, die Karten zu mischen :/ .
Ja ja der Freitag, hier wird dir geholfen
http://shuffletech.com/de.aspx
https://www.instructables.com/id/Slot-Machine-Another-Batch-Game/
Mitglied: 138701
138701 08.06.2019 um 21:54:21 Uhr
Goto Top
Ich habe meinen Fehler gefunden:

Zeile 29: if not %%a==%%b for /l %%c in (1,1,1000) do if !t%%a!==!t%%b! set /a t%%a=1+52*!random!/32768