Autor Beitrag
MagicRain
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 154

WinXp, Win8, iOS
Delphi 7, Lazarus Pascal, Delphi 10.2 Starter, NetBeans Java
BeitragVerfasst: Mi 19.07.17 12:07 
Moin Moin,

ich komme leider nicht weiter und brauche mal Eure Hilfe. Und zwar möchte ich eine Tabelle verarbeiten und dann diese in einem Array speichern, um damit später zu rechnen.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
  BitArray: array[1..10of Byte;
  B2Array: array[1..5of Byte;

  for i := 1 to 10 do
    begin
      Pos_1 := Pos(input1[i], Meinetabelle_1);
      BitArray[i]:= StrToInt(Pos_1);
    end;


Pos_1 ergibt meine Tabelle. Pos_1 sind die Positionen MeinerTabelle.

1 2 3 4 5 6 7 8 9 0
11 22 11 22 11 22 11 22 11 22 = Meine Tabellen Werte (Bytes)= Tabelle_1.
22 11 22 11 22 Werte Tabelle_2

Jetzt sollte ja jeder Wert von Pos_1 in ein BitArray speichern.
Jetzt möchte ich in meiner 2. Schleife auf diese Werte zugreifen
und damit rechnen.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
A := BitArray[i];
B := B2Array[i];

C := A * B;

A := 11;
B := 22;
C := 242;


Versuch 1 zur Lösung:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
  var
  F_Pos, f : String;
  i, i2, Pos_1 : Integer;

  for i := 1 to 10 do
    begin
      Pos_1 := Pos(input1[i], Tab_1);
      F_Pos := F_Pos + IntToHex(Pos_1,2);
      f := f+ IntToHex(pos_1,2);
    end;

    f := Copy(f, 3 , 10);

  for i2:= 1 to 10 do
    begin
      A := StrToInt('$' + Copy(F_Pos,i2,2));
      B := StrToInt('$' + Copy(f,i2,2));
      C := A * B;
    end;

Beim ersten Schleifendurchlauf, funktioniert das ganze Perfekt, aber beim 2. Durchlauf nicht mehr weil beim ersten A = 11 B = 22, 2 Durchlauf A:= 12 B = 21 irgendwie stimmen die Werte nicht er soll ja immer 2 Zeichen nehmen also 1. A = 11 B = 22 2 schleifen durchlauf A = 22 B = 11....Vielleicht sieht jemand mein Fehler....


Das Problem ist das BitArray und B2Array leider nicht die Werte haben, die ich ihnen ja eigentlich zu gewiesen habe.
Erst wollte ich das ganze von Schleife 1 in einem String speichern und dann verarbeiten, aber das funktioniert nicht, weil ich
nicht weiß, wie ich dann auf die Werte zugreifen kann. Beim 1. Schleifen Durchlauf soll Wert 1 genommen werden, dann Wert 2 usw...
Für jede Hilfe wäre ich dankbar.

MfG

MagicRain
Gammatester
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 328
Erhaltene Danke: 101



BeitragVerfasst: Mi 19.07.17 12:52 
user profile iconMagicRain hat folgendes geschrieben Zum zitierten Posting springen:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
  BitArray: array[1..10of Byte;
  B2Array: array[1..5of Byte;
...
C := A * B;

A := 11;
B := 22;
C := 242;

Die Operationen unter ... sollten mM überhaupt nicht kompilierbar sein. Ist das wirklich Dein Code?

Für diesen Beitrag haben gedankt: MagicRain
MagicRain Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 154

WinXp, Win8, iOS
Delphi 7, Lazarus Pascal, Delphi 10.2 Starter, NetBeans Java
BeitragVerfasst: Mi 19.07.17 12:57 
Das jetzt nur zum Beispiel was ich dann damit vorhabe.

MfG
Gammatester
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 328
Erhaltene Danke: 101



BeitragVerfasst: Mi 19.07.17 13:00 
Wie multipliziert man zwei Byte-Arrays?

Für diesen Beitrag haben gedankt: MagicRain
MagicRain Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 154

WinXp, Win8, iOS
Delphi 7, Lazarus Pascal, Delphi 10.2 Starter, NetBeans Java
BeitragVerfasst: Mi 19.07.17 13:14 
Wollte das so umsetzen..

A := bitarray[i];
B := b2array[i];
C := a * b;

MfG
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 19.07.17 13:47 
- Nachträglich durch die Entwickler-Ecke gelöscht -

Für diesen Beitrag haben gedankt: MagicRain
MagicRain Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 154

WinXp, Win8, iOS
Delphi 7, Lazarus Pascal, Delphi 10.2 Starter, NetBeans Java
BeitragVerfasst: Mi 19.07.17 14:01 
Schonmal danke aber die Werte sind leider nicht konstant das halt mein großes Problem. Muss dem Array immer wieder in einer Schleife die neuen Werte zuweisen.

MfG
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 19.07.17 14:07 
- Nachträglich durch die Entwickler-Ecke gelöscht -

Für diesen Beitrag haben gedankt: MagicRain
MagicRain Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 154

WinXp, Win8, iOS
Delphi 7, Lazarus Pascal, Delphi 10.2 Starter, NetBeans Java
BeitragVerfasst: Mi 19.07.17 14:15 
Ok danke. Das Problem ist nur ich will beim nächsten Schleifen Durchlauf die nächsten Werte einlesen ich dachte das ginge mit Zugriff auf den Schleifen Zähler.

A := Tabelle1[i];

Nur muss ich irgendwie dem Array die Daten zuweisen die vorher in einer Schleife berechnet werden.

MfG

Ed: muss später mal testen vlt liegt der Fehler da das ich mein Array 1..10 deklariert habe und nicht 0..9.
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 19.07.17 14:26 
- Nachträglich durch die Entwickler-Ecke gelöscht -

Für diesen Beitrag haben gedankt: MagicRain
MagicRain Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 154

WinXp, Win8, iOS
Delphi 7, Lazarus Pascal, Delphi 10.2 Starter, NetBeans Java
BeitragVerfasst: Mi 19.07.17 14:36 
Das Versuch ich halt hier glaube da liegt das Problem.

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
  BitArray: array[1..10of Byte;
  B2Array: array[1..5of Byte;

  for i := 1 to 10 do
    begin
      Pos_1 := Pos(input1[i], Meinetabelle_1);
      BitArray[i]:= StrToInt(Pos_1);
    end;


BitArray[i]:= strtoint(pos1) ich glaube er erstellt das Array nicht richtig!


Mit freundlichen Grüßen
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 19.07.17 14:46 
- Nachträglich durch die Entwickler-Ecke gelöscht -

Für diesen Beitrag haben gedankt: MagicRain
MagicRain Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 154

WinXp, Win8, iOS
Delphi 7, Lazarus Pascal, Delphi 10.2 Starter, NetBeans Java
BeitragVerfasst: Mi 19.07.17 14:52 
Also Input ist zB vor oder Nachname und Tabelle ist eine Chartabbelle.

Const
Tabelle = 'abcdefghijklmnopqrstuvwxyz';
Input := ' Herr. Test';
Und jetzt holle ich mir mit pos die Position zB vom H von dem Herr. Und das möchte ich dann in meinem Array speichern und weiter damit rechnen. Hoffe das ist etwas verständlicher.

Mit freundlichen Grüßen
Frühlingsrolle
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Mi 19.07.17 14:59 
- Nachträglich durch die Entwickler-Ecke gelöscht -

Für diesen Beitrag haben gedankt: MagicRain
MagicRain Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 154

WinXp, Win8, iOS
Delphi 7, Lazarus Pascal, Delphi 10.2 Starter, NetBeans Java
BeitragVerfasst: Mi 19.07.17 15:52 
Ja danke erstmal ich werde später mal wieder Bissel basteln und schauen was sich ergibt!

Mit freundlichen Grüßen