Byte Array in ACTION!
von Cash » So 11. Jan 2015, 11:56Hi,
ich komme grad mit den byte arrays nicht klar. Ich möchte folgendes BASIC Programm in ACTION! Portieren.
Kann mir jemand erklären was das Programm macht, ich verstehe 50,60,70 nicht. Es zählt doch von J bzw I von 1 bis 3 hoch nach jedem Durchgang. Aber wie kann dann z.b. die Abfrage in Zeile 50 IF A(I,J)=1 sein? Bedeutet das wenn nach der 1 Schleife A(1,1)=1 also beides I,J 1 sind dann das Ergebnis =1 ist?
Dann verstehe ich 70 nicht wie kann A(I,J)+B(I,J)=0 sein?
Wenn ich das so in Basic eingebe werden X0 ge Printed und dann wieder gelöscht.
1)Wie könnte man so etwas in ACTION! coden?
2)Wenn ich z.B DIM X(4) in Action umsetzten will mach ich das mit BYTE ARRAY X(4) bzw. klammer weglassen oder?
3)Wenn ich z.b. ein DIM A$(2) habe bedeutet das doch das ich 2 Bytes für den String A reserviere?
ich komme grad mit den byte arrays nicht klar. Ich möchte folgendes BASIC Programm in ACTION! Portieren.
- Code: Alles auswählen
4 PRINT CHR$(125)
10 DIM A(3,3)
20 DIM B(3,3)
30 FOR J=1 to 3
40 FOR I=1 to 3
50 IF A(I,J)=1 THEN POSITION J*4+8,I*4+3:PRINT "X";
60 IF B(I,J)=1 THEN POSITION J*4+8,I*4+3:PRINT "0";
70 IF A(I,J)+B(I,J)=0 THEN POSITION J*4+8,I*4+3:PRINT " ";
80 NEXT I
90 PRINT
100 NEXT J
Kann mir jemand erklären was das Programm macht, ich verstehe 50,60,70 nicht. Es zählt doch von J bzw I von 1 bis 3 hoch nach jedem Durchgang. Aber wie kann dann z.b. die Abfrage in Zeile 50 IF A(I,J)=1 sein? Bedeutet das wenn nach der 1 Schleife A(1,1)=1 also beides I,J 1 sind dann das Ergebnis =1 ist?
Dann verstehe ich 70 nicht wie kann A(I,J)+B(I,J)=0 sein?
Wenn ich das so in Basic eingebe werden X0 ge Printed und dann wieder gelöscht.
1)Wie könnte man so etwas in ACTION! coden?
2)Wenn ich z.B DIM X(4) in Action umsetzten will mach ich das mit BYTE ARRAY X(4) bzw. klammer weglassen oder?
3)Wenn ich z.b. ein DIM A$(2) habe bedeutet das doch das ich 2 Bytes für den String A reserviere?