Willkommen |
|
myGully |
|
Links |
|
Forum |
|
|
|
 |
06.10.10, 13:23
|
#1
|
Anfänger
Registriert seit: Sep 2010
Beiträge: 12
Bedankt: 1
|
Batch Variable in Varible
Hallo,
brauche für die Schule einen kleinen Batch,
Habe beim schreiben ein Problem festgestellt.
Und zwar ich würde gerne den Inhalt einer Variable in einer Anderen speichern.
Das also der Wert(in dem fall ein Wort) aus der Varible x in y übertragen wird.
Ist sowas möglich?
Bitte schreibt schnell zurück!!!!
mfg
Julian57
|
|
|
06.10.10, 14:13
|
#2
|
Echter Freak
Registriert seit: Aug 2009
Beiträge: 2.074
Bedankt: 319
|
Also du willst x in y übertragen?
%y% == %x%
müsste funzen^^
|
|
|
06.10.10, 14:23
|
#3
|
Anfänger
Registriert seit: Sep 2010
Beiträge: 12
Bedankt: 1
|
Hallo,
Funzt nicht!!!
hab das ganze mal mit folgenden S***** getestet:
@echo off
set y=0
:anfang
set x=10
set %x%==%y%
echo %y%
pause
cls
goto anfang
Als Resultat gibt der Batch eine "0" aus.
Also geht es nicht sonst würde es eine "10" ausgeben!!!
Bitte helft mir!!!!!
mfg
Julian57
|
|
|
06.10.10, 14:49
|
#4
|
Banned
Registriert seit: Aug 2010
Beiträge: 209
Bedankt: 70
|
(Riecht so nach Troll...)
Versuche es mal mit weniger Ausrufezeichen und benutzte Deinen Verstand...
Lies Dir Deinen Code nochmals durch, dann findest Du den Fehler!
Was passiert wenn Du "echo %x%" ausgeben lässt?
Das sollte Dich selbst auf die Lösung bringen.
Falls nicht, dann ist Programmieren absolut nichts für Dich!
|
|
|
06.10.10, 15:02
|
#5
|
Anfänger
Registriert seit: Sep 2010
Beiträge: 12
Bedankt: 1
|
Hallo,
1. Ich weiß was passiert was wenn ich %x% ausgebe lasse,dann gibt er mir 10 aus,
aber wie du vlt schon bemerkt hast ist mein Ziel die eine Variable in der
Anderen zu übertragen und nicht das Problem anders zu umgehen!!!!
2.Es geht auch nicht mit anderen Satzzeichen.Also %x%=%y%
3.Bitte postet nicht so uneffizient Antworten!!!!!!!!
Bitte helft mir!!!!!
mfg
Julian57
|
|
|
06.10.10, 15:07
|
#6
|
Banned
Registriert seit: Aug 2010
Beiträge: 209
Bedankt: 70
|
Haha... selten schlechter Troll
Kann wohl geschlossen werden!
|
|
|
06.10.10, 15:23
|
#7
|
Anfänger
Registriert seit: Sep 2010
Beiträge: 12
Bedankt: 1
|
Hallo,
1. das S***** oben war nur ein Test S*****
2. Ich will ein S***** schreiben was mir in zufälliger Reinfolge definierte Begriffe
ausgibt.
Mein Problem ist dabei das kein Begriff dopppelt ausgegeben werden soll
Hier mal das S*****:
@echo off
set Zähler= 1
:Anfang
Set /a zz=%random% %% 8 + 1
If %zz%==1 (set begriff=1Begriff)
If %zz%==2 (set begriff=2Begriff)
If %zz%==3 (set begriff=3Begriff)
If %zz%==4 (set begriff=4Begriff)
If %zz%==5 (set begriff=5Begriff)
If %zz%==6 (set begriff=6Begriff)
If %zz%==7 (set begriff=7Begriff)
If %zz%==8 (set begriff=8Begriff)
If %Zähler%==1 (set folge1==%begriff%) //das geht nicht
If %Zähler%==2 (set folge2==%begriff%) //das geht nicht
If %Zähler%==3 (set folge3==%begriff%) //das geht nicht
If %Zähler%==4 (set folge4==%begriff%) //das geht nicht
If %Zähler%==5 (set folge5==%begriff%) //das geht nicht
If %Zähler%==6 (set folge6==%begriff%) //das geht nicht
If %Zähler%==7 (set folge7==%begriff%) //das geht nicht
If %Zähler%==8 (set folge8==%begriff%) //das geht nicht
If %Zähler%==9 (set %begriff%=keine Begriffe mehr vorhanden!!!)
If %Zähler%==10 (exit)
If %begriff%==%folge1% (set /a Zähler=%Zähler%-1 & cls & goto Anfang)
If %begriff%==%folge2% (set /a Zähler=%Zähler%-1 & cls & goto Anfang)
If %begriff%==%folge3% (set /a Zähler=%Zähler%-1 & cls & goto Anfang)
If %begriff%==%folge4% (set /a Zähler=%Zähler%-1 & cls & goto Anfang)
If %begriff%==%folge5% (set /a Zähler=%Zähler%-1 & cls & goto Anfang)
If %begriff%==%folge6% (set /a Zähler=%Zähler%-1 & cls & goto Anfang)
If %begriff%==%folge7% (set /a Zähler=%Zähler%-1 & cls & goto Anfang)
If %begriff%==%folge8% (set /a Zähler=%Zähler%-1 & cls & goto Anfang)
echo.
echo Zufälliger Begriff: %begriff%
echo.
set /a Zähler=%Zähler%+1
cls
goto Anfang
Hoffe ihr versteht was ich will.
Wenn ihr eine bessere Lösung kennt postet sie mir!!!
Bitte antwortet schnell!!!
mfg
Julian57
|
|
|
06.10.10, 18:47
|
#8
|
Mitglied
Registriert seit: Aug 2009
Ort: void* (*wtf[])(void **);
Beiträge: 453
Bedankt: 137
|
Code:
C:\Users\Urga>set x=asdasdad
C:\Users\Urga>echo %x%
asdasdad
C:\Users\Urga>set y=%x%
C:\Users\Urga>echo %y%
asdasdad
C:\Users\Urga>set y=%x%XXX
C:\Users\Urga>echo %y%
asdasdadXXX
__________________
entropie erfordert keine wartung
|
|
|
07.10.10, 14:15
|
#9
|
Anfänger
Registriert seit: Sep 2010
Beiträge: 12
Bedankt: 1
|
Hallo,
habs jetzt mal anders versucht
Klappt aber leider bisher auch noch nicht. Muss irgend einen Fehler in das S***** geschrieben haben, ich finde ihn aber nicht selbst.
Naja ergibt mir jetzt keine doppelten Begriffe aus,
aber dafür gibt er mit wenn er eine Doppelte findet gar nichts mehr aus.
Hab keine Ahnung warum!!!
Hier erst mal das S*****:
@echo off
set y1=0
set y2=0
set y3=0
set y4=0
set y5=0
set y6=0
set y7=0
set y8=0
set Zähler=0
:1
cls
set /a zz=%random% %% 8 + 1
If %zz%==1 (set x=begriff1 & set /a y1=%y1%+1)
If %zz%==2 (set x=begriff2 & set /a y2=%y2%+1)
If %zz%==3 (set x=begriff3 & set /a y3=%y3%+1)
If %zz%==4 (set x=begriff4 & set /a y4=%y4%+1)
If %zz%==5 (set x=begriff5 & set /a y5=%y5%+1)
If %zz%==6 (set x=begriff6 & set /a y6=%y6%+1)
If %zz%==7 (set x=begriff7 & set /a y7=%y7%+1)
If %zz%==8 (set x=begriff8 & set /a y8=%y8%+1)
If %y1% GEQ 2 (goto 1) //hier ist irgendwo der Fehler
If %y2% GEQ 2 (goto 1) //hier ist irgendwo der Fehler
If %y3% GEQ 2 (goto 1) //hier ist irgendwo der Fehler
If %y4% GEQ 2 (goto 1) //hier ist irgendwo der Fehler
If %y5% GEQ 2 (goto 1) //hier ist irgendwo der Fehler
If %y6% GEQ 2 (goto 1) //hier ist irgendwo der Fehler
If %y7% GEQ 2 (goto 1) //hier ist irgendwo der Fehler
If %y8% GEQ 2 (goto 1) //hier ist irgendwo der Fehler
echo.
echo %x%
echo.
set /a Zähler=%Zähler%+1
if %Zähler%==8 (goto 2)
pause
goto 1
:2
cls
echo.
echo keine Begriffe mehr vorhanden
echo.
pause
exit
Ich hoffe ihr könnt mir helfen
mfg
Julian57
|
|
|
Forumregeln
|
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren
HTML-Code ist Aus.
|
|
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:37 Uhr.
().
|