Archiv verlassen und diese Seite im Standarddesign anzeigen : Batch: Random Zahl von 1-100
In Batch gibt es den Befehl %random% der eine Zahl von 0-65535 zufällig erstellt, nun frage ich mich ob ich dies auf 1-100 beschränken kann ?
die Zahl sollte in einer Variable gespeichert werden also:
set Zahl1==%random%
Weiss das nun Jemand und kann mir helfen ?
Vitamin X
20.03.2010, 09:42
@ECHO OFF &SETLOCAL &TITLE Zufallszahlen
ECHO %random%>NUL
SET /A rd=(%random%*100/32767)+1
set zahl=%rd%
ECHO %rd%
PAUSE
Für eine Random zahl, bisschen googlen hätte geholfen ;) zahl ist deine Variable die den Wert rd zugeteilt bekommt, kannst du dann via ECHO %zahl% woanders aufrufen.
Es funktioniert, Danke.
Aber könntest du mir den Code erklären, also was er genau macht ?
Und was muss ich ändern um zum beispiel eine Zahl von 1-25 haben möchte?
oder eine Zahl von 26-50?
Vitamin X
20.03.2010, 10:14
@ECHO OFF &SETLOCAL &TITLE Zufallszahlen
-> Unterdrückt Anzeige der Befehle, Setzt Konsolentitel
ECHO %random%>NUL
-> Gibt die erste nicht-zufällige Zahl ins Nichts aus
SET /A rd=(%random%*100/32767)+1
-> Speichert in rd eine Zufallszahl von 1 bis 100
ECHO %rd%
-> Gibt rd aus
PAUSE
-> Wartet, bis der user eine Taste (http://forum.chip.de/#) (Enter?) drücktIch könnte dir jetzt noch mehr von google kopieren, aber mehr als http://tinyurl.com/yehfc2e (http://tinyurl.com/yehfc2e)hab ich auch nicht :D
für andere bereiche einfach 100 mit 25 o.ä. ersetzen.
Also ich kann dir ja mal diese Zeile etwas entschlüsseln:
SET /A rd=(%random%*100/32767)+1
SET leitet eine Variable ein.
/A sagt das diese Variable eine Zahl sein muss.
rd ist der Name der Variable.
= sagt das folgende wird rd zugewiesen.
(%random%*100/32767)+1 erstellt eine random Zahl (die ist zwischen 1 und 32767) und nimmt diese mal 100. Das Ergebnis wird durch die Anzahl der Maximalen Möglichkeiten der random Zahl geteilt, es ergibt sich somit eine Zahl zwischen 0 und 99 da vorher mal 100 genommen wurde. Durch +1 am Ende entsteht somit eine Zahl zwischen 1 und 100 ;)
MfG
B4n4n4
Powered by vBulletin® Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.