Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Batch Begriffe in zufälliger reinvollge ausgeben. Problem keine Doppelten

Frage Entwicklung

Mitglied: Julian57

Julian57 (Level 1) - Jetzt verbinden

19.10.2010, aktualisiert 15:11 Uhr, 2502 Aufrufe, 3 Kommentare

Hallo,
und zwar ich habe ein kleines Problem mit einen Batch,
ich will ein Script schreiben was mir in zufälliger Reinfolge definierte Begriffe ausgibt, wobei er keine Doppelten ausgeben soll.
Hier meinen ersten Ansatz:

01.
@echo off 
02.
set y1=0 
03.
set y2=0 
04.
set y3=0 
05.
set y4=0 
06.
set y5=0 
07.
set y6=0 
08.
set y7=0 
09.
set y8=0 
10.
set Zähler=0 
11.
:1 
12.
cls 
13.
set /a zz=%random% %% 8 + 1 
14.
If %zz%==1 (set x=begriff1 & set /a y1=%y1%+1) 
15.
If %zz%==2 (set x=begriff2 & set /a y2=%y2%+1) 
16.
If %zz%==3 (set x=begriff3 & set /a y3=%y3%+1) 
17.
If %zz%==4 (set x=begriff4 & set /a y4=%y4%+1) 
18.
If %zz%==5 (set x=begriff5 & set /a y5=%y5%+1) 
19.
If %zz%==6 (set x=begriff6 & set /a y6=%y6%+1) 
20.
If %zz%==7 (set x=begriff7 & set /a y7=%y7%+1) 
21.
If %zz%==8 (set x=begriff8 & set /a y8=%y8%+1) 
22.
If %y1% GEQ 2 (goto 1) 
23.
If %y2% GEQ 2 (goto 1)  
24.
If %y3% GEQ 2 (goto 1) 
25.
If %y4% GEQ 2 (goto 1)  
26.
If %y5% GEQ 2 (goto 1)  
27.
If %y6% GEQ 2 (goto 1)  
28.
If %y7% GEQ 2 (goto 1) 
29.
If %y8% GEQ 2 (goto 1) 
30.
echo. 
31.
echo %x% 
32.
echo. 
33.
set /a Zähler=%Zähler%+1 
34.
if %Zähler%==8 (goto 2) 
35.
pause 
36.
goto 1 
37.
:2 
38.
cls 
39.
echo. 
40.
echo keine Begriffe mehr vorhanden 
41.
echo. 
42.
pause 
43.
exit
Leider funktioniert das Script nocht nicht ganz wie Ich es mir es vorstelle
Es gibt mir erst mal ein paar Begriffe aus aber wenn es einen doppelten Begriff findet bleibt es hängen und flakert und gibt nichts mehr aus
Ich weiß nicht woran es liegt
Bitte postet meinen Fehler, oder auch wenn ihr nur eine Ahnung habt woran es liegen könnte
Ich hoffe sowas ist überhaupt realisierbar!!!
Vieleicht kennt ihr eine bessere Lösung wie man so was lösen könnte, postet sie dann auch.
Über eine funktionierende Lösung wäre ich sehr dankbar.

mfg

Julian57
Mitglied: Friemler
19.10.2010 um 15:03 Uhr
Hallo Julian57,

Dein Fehler war folgender: Die Zeilen
If %yX% GEQ 2 (goto 1)
hätten
If %yX% GEQ 2 (set /a "yX=yX-1" & goto 1)
lauten müssen.

Außerdem war der erste PAUSE-Befehl falsch platziert, sodass der letzte Begriff durch CLS wieder vom Bildschirm verschwand.

Hier mal eine etwas eingedampfte Version Deines Skripts. Bei Verständnisfragen bitte melden.
01.
@echo off 
02.
 
03.
setlocal 
04.
 
05.
 
06.
set "begriff1=Wort1" 
07.
set "begriff2=Wort2" 
08.
set "begriff3=Wort3" 
09.
set "begriff4=Wort4" 
10.
set "begriff5=Wort5" 
11.
set "begriff6=Wort6" 
12.
set "begriff7=Wort7" 
13.
set "begriff8=Wort8" 
14.
 
15.
set /a "y1=0,y2=0,y3=0,y4=0,y5=0,y6=0,y7=0,y8=0" 
16.
set Zaehler=0 
17.
 
18.
 
19.
:1 
20.
cls 
21.
 
22.
set /a zz=%random% %% 8 + 1 
23.
 
24.
for /f "tokens=2 delims==" %%c in ('set y%zz%') do ( 
25.
  if %%c equ 1 goto 1 
26.
27.
 
28.
call set "x=%%begriff%zz%%%" 
29.
set /a "y%zz%+=1" 
30.
 
31.
echo. 
32.
echo %x% 
33.
echo. 
34.
pause 
35.
 
36.
set /a Zaehler+=1 
37.
if %Zaehler% lss 8 goto 1 
38.
 
39.
 
40.
:2 
41.
cls 
42.
echo. 
43.
echo keine Begriffe mehr vorhanden 
44.
echo. 
45.
 
46.
pause
Gruß
Friemler
Bitte warten ..
Mitglied: Julian57
19.10.2010 um 15:16 Uhr
Hallo,

Super funktioniert,
danke dir

mfg

Julian57
Bitte warten ..
Mitglied: H41mSh1C0R
27.12.2010 um 10:00 Uhr
Wenn alles funktioniert, dann bitte noch den grünen Haken setzen damit man das in der Übersicht sieht.

VG
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Doppelte Dateneinträge per Batch aus Datei löschen? HILFE (7)

Frage von freshman2017 zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch ausgabe zeilenweise stat spaltenweise ausgeben (4)

Frage von sugram zum Thema Batch & Shell ...

Vmware
VMs verlieren zufällig Netzwerkverbindung (3)

Frage von OniChan zum Thema Vmware ...

Router & Routing
Router zu Router config ?! zufällige disconnects (11)

Frage von richwhat zum Thema Router & Routing ...

Neue Wissensbeiträge
Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(2)

Information von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
Router & Routing
Allnet - VDSL2 Modem - SFP (mini-GBIC) (20)

Frage von Dobby zum Thema Router & Routing ...

Windows 10
Windows 10 Ordnerfreigabe (19)

Frage von Xaero1982 zum Thema Windows 10 ...

Monitoring
Netzwerk-Monitoring Software (17)

Frage von Ghost108 zum Thema Monitoring ...

Windows Server
gelöst Kopiervorgang schlägt fehl, weil Datei- und Ordnername zu lang sind (14)

Frage von Schroedi zum Thema Windows Server ...