Thema Datum  Von Nutzer Rating
Antwort
13.08.2008 18:04:37 Daniel
NotSolved
Blau Aw:Permutationen erstellen & in Txt-Datei ausgeben
15.08.2008 12:41:40 jh
NotSolved

Ansicht des Beitrags:
Von:
jh
Datum:
15.08.2008 12:41:40
Views:
713
Rating: Antwort:
  Ja
Thema:
Aw:Permutationen erstellen & in Txt-Datei ausgeben
Hallo,

das ist natürlich machbar, ich sehe nur nicht so recht, worin der
Nutzen bestehen soll. Allein die entstehende Textdatei wird ein
Monster von 32 GB, die kaum vernünftig handhabbar ist. Zudem ist
jedes der gespeicherten Daten ohne Probleme und wesentlich schneller
einzeln darstellbar. Mathematisch gesehen handelt es sich dabei um
Kombinationen 30. Ordnung von 2 Elementen mit Wiederholung, und von
der Struktur her sind die entstehenden Daten identisch mit der binären
Darstellung der Zahlen von 0 bis 2 ^ 30 - 1 als Strings aus Nullen und
Einsen, die sich recht einfach erzeugen lassen. Allerdings bringt VBA
dafür keine "eingebaute" Funktion mit, so dass man nicht umhin kommt,
eine eigene Function zu schreiben, was recht langsam ist. Um die
gesamte Datenmenge zu erzeugen und zu schreiben, musst du auch auf
einem einigermaßen schnellen Rechner einige Stunden Rechenzeit
einplanen. Schneller ginge es natürlich in Assembler, aber das kann
VB nicht so ohne weiteres, so dass eher eine andere Sprache in Frage
käme.

Wenn du es doch in Excel-VBA auf dich nehmen willst, könnte es etwa so
gehen (ich habe aber nicht den vollen Zahlenbereich getestet und auch
nicht großartig auf Tempo optimiert).

Public Function bin(ByVal zahl As Long) As String
Dim b As Byte, strA As String
For b = 0 To 29
If zahl And 2 ^ b Then
strA = "1" & strA
Else
strA = "0" & strA
End If
Next b
bin = strA
End Function

Sub schreiben()
Dim l As Long, f As Integer
f = FreeFile
Open "c:\kombi.txt" For Output As #f
For l = 0 To 2 ^ 30
Print #f, bin(l)
Next l
Close #f
End Sub

Gruß

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
13.08.2008 18:04:37 Daniel
NotSolved
Blau Aw:Permutationen erstellen & in Txt-Datei ausgeben
15.08.2008 12:41:40 jh
NotSolved