Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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
GELÖST

Zahlengenerator mit Batch

Frage Entwicklung Batch & Shell

Mitglied: 98641

98641 (Level 1)

09.04.2011 um 13:25 Uhr, 3920 Aufrufe, 9 Kommentare

hallo,

weiß nicht mehr weiter
brauche einen generator mit batch der mir jegliche zahlen zusammen stellt
z.B.
ich habe die zahlen 1 2 3 dann soll er mir alle daraus formbaren Zahlen zusammen stellen
in dem fall
111 133 122 132 113 112 131 121 213 222 233 211 231 223 221 232 212 321 333 322
311 321 331 332 323 313 11 12 13 1 2 3 22 23 21 31 32
Vielleicht wisst ihr weiter.

Mit freundlichen Grüßen,
Michi
Mitglied: Biber
09.04.2011 um 14:36 Uhr
Moin Michi12345,

normalerweise werden zur computergestützten Berechnung von Ergebnissen vier Ressourcen benötigt.
  • einen definierten und beschreibbaren Input und Output
  • eindeutige Verarbeitungsregeln (aka Algorithmus)
  • ein geeignetes Programmierwerkzeug
  • einen geduldigen Handwerker, der mit dem Werkzeug umgehen kann.

Du hast nun eine Aufgabe aus dem Kontext Kombinatorik gewählt oder gestellt bekommen.
Und kommst nun relativ schnell zu dem Schluss "weiß nicht mehr weiter".

Kann es sein, dass du die dritte der vier notwendigen Ressourcen ein bisschen zu flapsig geprüft hast?

Oder anders formuliert:
Rein spekulativ- was glaubst du bringt mehr Treffer bei einer Suchmaschine: die Kombination "Batch+Kombinatorik" oder "FDP+Sachertorte"?

In welchem Kontext und in welcher Form (Tabelle, Bildschirmanzeige, Fliesstext) brauchst du denn den Output und wofür (für welche Folgeverarbeitung)?

Grüße
Biber
Bitte warten ..
Mitglied: rubberman
09.04.2011 um 14:42 Uhr
Hallo Michi,

ich weiß zwar nicht, warum 1- und 2-stellige Zahlen auch zu den Kombinationsmöglichkeiten gehören sollen, aber so wie du es beschreibst, vielleicht so:
01.
@echo off &setlocal enabledelayedexpansion 
02.
for /l %%a in (0,1,3) do ( 
03.
  for /l %%b in (0,1,3) do ( 
04.
    for /l %%c in (1,1,3) do ( 
05.
      for /f "tokens=* delims=0" %%d in ("%%a%%b%%c") do echo %%d|findstr /v "0" 
06.
07.
08.
09.
pause
Grüße
rubberman


<edit>Hallo Biber. Mit 3-stelligen Zahlenkombinationen ist ja die Berechnungszeit auch noch überschauber, aber wehe es werden mehr </edit>
Bitte warten ..
Mitglied: Biber
09.04.2011 um 15:13 Uhr
Moin rubberman,

auch für mich gehören die ein- und zweistelligen Werte nicht dazu.
Bei deinem Schnipsel ist die DelayedExpansion zwar nicht nötig, aber falls die ohnehin aktiv wäre, dann ginge auch dieser Oneliner:
>@for /l %a in (0,1,3) do @for /L %b in (0,1,3) do @for /L %c in (1,1,3) do @set "x=%a%b%c" &@echo !x:0=!
[vom CMD-Prompt aus, führendes ">" gehört zu meinem Prompt]
Ausgabe:
11 
12 
13 
21 
22 
23 
31 
32 
33 
11 
12 
13 
111 
112 
... 
333
Dennoch - die Aufgabe hat alles, was IT ad absurdum führt.
Eine aus dem Kontext gerissene Aufgabenstellung, Input und Output unklar definiert, Algorithmus intransparent, das falsche Werkzeug und keinen Plan, wer das umsetzt.

Aber wahrscheinlich Windows 7 64bit Dolby Surround.

Grüße
Biber
Bitte warten ..
Mitglied: rubberman
09.04.2011 um 15:57 Uhr
Hallo Biber.

Zitat von Biber:
Bei deinem Schnipsel ist die DelayedExpansion zwar nicht nötig
Stimmt.
@echo !x:0=!
... erzeugt dafür ein paar Zeichenfolgen zu viel

Zitat von Biber:
Dennoch - die Aufgabe hat alles, was IT ad absurdum führt.
Eine aus dem Kontext gerissene Aufgabenstellung, Input und Output unklar definiert, Algorithmus intransparent, das falsche
Werkzeug und keinen Plan, wer das umsetzt.

Aber wahrscheinlich Windows 7 64bit Dolby Surround.

Völlig d'accord.

Grüße
rubberman
Bitte warten ..
Mitglied: Biber
09.04.2011 um 16:55 Uhr
Moin rubberman,

hast recht, bei mir kommt viel zuviel heraus - keine Ahnung, warum ich so lieblos an diese Aufgabe herangegangen bin.

Dann nochmal vom CMD-Prompt als POC ohne Variablen und ohne DelayedFirlefanz.
>@for /l %a in (1,1,3) do @(echo %a) & @for /L %b in (1,1,3) do @(echo %a%b) & @for /L %c in (1,1,3) do @echo %a%b%c 
11 
111 
112 
113 
12 
121 
122 
123 
13 
131 
132 
133 
21 
211 
212 
213 
22 
221 
222 
223 
23 
231 
232 
233 
31 
311 
312 
313 
32 
321 
322 
323 
33 
331 
332 
333
P.S. Wo ist denn der Michi? Weint der immer noch?

Grüße
Biber
Bitte warten ..
Mitglied: 98641
09.04.2011 um 18:18 Uhr
vielen dank für diese ganzen Antworten
könntet ihr mir eventuell den Syntax dazu noch erklären
Michi
Bitte warten ..
Mitglied: Biber
09.04.2011 um 18:28 Uhr
Zitat von 98641:
vielen dank für diese ganzen Antworten
könntet ihr mir eventuell den Syntax dazu noch erklären
Michi
gern geschehen.
wusstest du, dass es auf einem halben Dutzend Kontinente dieses Planeten als unfein gilt, auf Gegenfragen mit Gegenfragen zu antworten?
Bibi
Bitte warten ..
Mitglied: 98641
09.04.2011 um 18:34 Uhr
sorry das war nicht so gemeint, jedoch hätte ich dann nur für diese frage einen neuen Inhalt erstellen müssen und das würde sich nicht lohnen, dachte ich
Bitte warten ..
Mitglied: Biber
09.04.2011 um 20:50 Uhr
Moin Michi12345,

Zitat von 98641:
sorry das war nicht so gemeint, jedoch hätte ich dann nur für diese frage einen neuen Inhalt erstellen müssen und
das würde sich nicht lohnen, dachte ich
In meinem Freundes- und Bekanntenkreis werde ich oft "Biber der Geduldige" genannt.
Meist aber nur, wenn ich nicht in der Nähe bin, weil ich sehr schnell ausraste, wenn mir jemand ironisch kommt.

Egal, wenn du meine Fragen nicht beantworten willst, dann leg ich noch 'ne Schippe drauf, und zwar glühende Kohlen auf dein Haupt.

Zum Verständnis, was mein proof-of-concept-Oneliner macht, schau dir bitte die FOR/?-Hilfe am CMD-Prompt an.

For/L ist eine Zählschleife, die Zahlen VON-BIS durchnudelt. Vom DurchnudeLn ist das "L" hergeleitet
@for /l %a in (1,1,3) do @(echo %a) & @for /L %b in (1,1,3) do @(echo %a%b) & @for /L %c in (1,1,3) do @echo %a%b%c
Als Batch geschrieben, damit die Struktur erkennbarer wird,und ein bisschen kommentiert sähe es so aus

01.
@echo off && Rem Das @echo off ersetzt die vielen "@" im Oneliner. 
02.
REM In einer ZählschLeife mit Zählvariable %%a VON:1 BIS:3 mit Schrittweite:1 TUE 
03.
FOR /L %a in (1,1,3) DO ( 
04.
     REM zeige aktuellen Zählschleifenwert %%a der FOR-Anweisung 
05.
     echo %%a 
06.
     REM In einer ZählschLeife mit Zählvariable %%b VON:1 BIS:3 mit Schrittweite:1 TUE 
07.
     FOR /L %%b in (1,1,3) DO ( 
08.
         REM zeige aktuellen Zählschleifenwert %%a und %%b der FOR-Anweisungen 
09.
         echo %%a%%b 
10.
         REM In einer ZählschLeife mit Zählvariable %%c VON:1 BIS:3 mit Schrittweite:1 TUE 
11.
         FOR/L %%c in (1,1,3) DO ( 
12.
             REM zeige aktuelle Zählschleifenwerte %%a und %%b und %%c  der FOR-Anweisungen   
13.
             echo %%a%%b%%c 
14.
15.
         REM Ende der DO -Anweisung FOR mit Variable %%c 
16.
17.
    REM Ende der DO -Anweisung FOR mit Variable %%b 
18.
19.
REM Ende der DO -Anweisung FOR mit Variable %%a 
20.
REM Ende des Batches und meiner Geduld.
Grüße
Biber
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
Batch zum bearbeiten mehrerer CSV (3)

Frage von Matzus87 zum Thema Batch & Shell ...

Batch & Shell
Batch-Variable nach Stichworten aus TXT Datei durchsuchen (3)

Frage von Markus5579 zum Thema Batch & Shell ...

Batch & Shell
Dateinamen nach Zeichnen abschneiden - Batch-Shell (9)

Frage von cberndt zum Thema Batch & Shell ...

Batch & Shell
CMD Verschlüsslung ( Batch ) (11)

Frage von clragon zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...