VB6 Chiffre Code

Hallo Reinhard,

ich habe mal zum Spaß noch meinen ursprünglichen Ansatz fertig gemacht, ohne a beim Abarbeiten zu zerstören und die Anzahl Ziffern der Zahl vorher errechnet. Das geht auch, der Ansatz war also nicht ganz falsch. :smile:

Gruß Rainer

Option Explicit

Private Sub Command1\_Click()
 Dim a As Long, b As Integer, e As Long, i As Integer, n As Integer
 a = CLng(Text1.Text)
 n = Int(Log(a) / Log(10)) + 1
 For i = 0 To n - 1
 b = ((a \ (10 ^ i)) - (10 \* (a \ (10 ^ (i + 1)))) + 3)
 If b \> 9 Then b = b - 10
 e = e + (b \* (10 ^ i))
 Next
 Label1.Caption = n
 Label2.Caption = e
End Sub

Private Sub Command1_Click()
Dim a As Long, b As Integer, e As Long, i As Integer, n As
Integer
a = CLng(Text1.Text)
n = Int(Log(a) / Log(10)) + 1
For i = 0 To n - 1
b = ((a \ (10 ^ i)) - (10 * (a \ (10 ^ (i + 1)))) + 3)
If b > 9 Then b = b - 10
e = e + (b * (10 ^ i))
Next
Label1.Caption = n
Label2.Caption = e
End Sub

Hallo Rainer,

schöner Code, gar nicht einfach den nachzuvollziehen.
Ich hab mir grad vorgestellt wenn da ein Schüler einem lehrer diesen Code präsentiert. Ein Schüler, von dem der lehrer weiß daß jener bis vorgestern gar nicht Mid, Len usw. kannte.

Ist der Lehrer Sadist (wie ich *gg*) würde der Lehrer den Schüler bitten, ihm und der Klasse mal den Code Zeile für Zeile zu erläutern :smile:))
Naja, für einen wird die Sache nicht so witzig sein.

Mal was anderes. Du sagtest daß dein Rechner mehrere Tage lang „ausgelastet“ sei.
Mit einem VB-Programm? Obwohl, irgendwie gar nicht wichtig.
Was würde denn geschehen wenn du während der Rechner rechnet so einen kleinen Code ausführen läßt?

Mal weglassend, daß ich den Teufel tun würde und natürlich nie mit Unwichtigem evtl. die Rechnerei von 2 Tagen gefährde, sodaß ich wieder völlig neu starten müßte.

Würde dann der Kleincode nur sehr sehr schleppend ausgeführt?

Und, wenn der „Langrechnencode“ VB ist, ich gehe davon aus VB kann man auch in mehreren unabhängigen Instanzen starten, richtig?

Gruß
Reinhard

Hallo Reinhard,

schöner Code, gar nicht einfach den nachzuvollziehen.
Ich hab mir grad vorgestellt wenn da ein Schüler einem lehrer
diesen Code präsentiert. Ein Schüler, von dem der lehrer weiß
daß jener bis vorgestern gar nicht Mid, Len usw. kannte.

das ist ja alles nur ‚Grundlagen der Mathematik‘, der Code ist recht simpel.

Ist der Lehrer Sadist (wie ich *gg*) würde der Lehrer den
Schüler bitten, ihm und der Klasse mal den Code Zeile für
Zeile zu erläutern :smile:))
Naja, für einen wird die Sache nicht so witzig sein.

Mal was anderes. Du sagtest daß dein Rechner mehrere Tage lang
„ausgelastet“ sei.
Mit einem VB-Programm?

*gg* Ja. :smile: Das hatte ich vor einiger Zeit auf dem Schleppi geschrieben, der hat es aber nicht gepackt, ist nach ein paar Stunden mit Hitzeproblemen ausgestiegen. Der neue Rechner packt es, ist aber zu 80% ausgelastet.

Obwohl, irgendwie gar nicht wichtig.
Was würde denn geschehen wenn du während der Rechner rechnet
so einen kleinen Code ausführen läßt?

Das öffnen der IDE verbarucht ja auch schon Leistung. Wenn ich Pech habe stürzt der Rechner ab oder friert ein.

Mal weglassend, daß ich den Teufel tun würde und natürlich nie
mit Unwichtigem evtl. die Rechnerei von 2 Tagen gefährde,
sodaß ich wieder völlig neu starten müßte.

Zwei Tage … Der rechnet schon seit zwei Wochen. :smile: Eine Woche muss er noch.

Würde dann der Kleincode nur sehr sehr schleppend ausgeführt?

Nein. Wenn der Rechner nicht abstürzt, läuft alles in Normalgeschwindigkeit.

Und, wenn der „Langrechnencode“ VB ist, ich gehe davon aus VB
kann man auch in mehreren unabhängigen Instanzen starten,
richtig?

Ja, der Code ist VB6.
Klar kann man VB mehrfach starten, aber die Rechenleistung, auch die meines neuen Rechners, ist begrenzt. :smile:

Wenn mir das Programm abstürzt kann ich zwar an der Stelle wieder Aufsetzen, an der er war, aber das habe ich nicht vorgesehen, würde ein paar zusätzliche Stunden Programmiererei erfordern, die nicht nötig sind, wenn das Programm durchläuft.

Gruß Rainer