Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 21-07-2006, 13:51   #1 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 1.244
Arrays diagonal abfragen

Hi,

wie kann man Arrays diagonal abfragen.

Habe dieses Beispiel:

PHP-Code:
ar0 = [000"a"1111];
ar1 = [11"a"10000];
ar2 = [2"a"456789];
ar3 = ["a""b""c""d""e""f""g""h"];
_________________________;
for (var 
08i++)
{
    var 
zahl 1;
    for (var 
04m++)
    {
        if (
_root["ar" m][i] == _root["ar" + (1)][1])
        {
            
zahl++;
        }
        if (
zahl 1)
        {
            
trace (zahl);
        }
    }

Möchte hier zB. die "a" & 1 abfragen. Als trace sollte 4 ("a") und
2 (1) rauskommen.

Aber irgendwo habe ich einen Denkfehler. Ich bekomme mehrmal 2 ausgegeben.
__________________
Mfg aus Brandenburg.

harego

Spiel

Zur Page
harego ist offline   Mit Zitat antworten
Alt 21-07-2006, 14:28   #2 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.321
so?
a gibt es 4 mal, aber suchst du jetzt nach der 1 oder nach der 2? "..Als trace sollte 4 ("a") und.."
2 (1) rauskommen
Code:
ar0 = [0, 0, 0, "a", 1, 1, 1, 1];
ar1 = [1, 1, "a", 1, 0, 0, 0, 0];
ar2 = [2, "a", 4, 5, 6, 7, 8, 9];
ar3 = ["a", "b", "c", "d", "e", "f", "g", "h"];
all_ar = [].concat(ar0, ar1, ar2, ar3);
//
var anzahlA = 0;
var anzahl1 = 0;
for (var i in all_ar) {
	if (all_ar[i] == 'a') {
		anzahlA++;
	} else if (all_ar[i] == 1) {
		anzahl1++;
	}
}
trace("a: "+anzahlA);
trace("1: "+anzahl1);
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib ist offline   Mit Zitat antworten
Alt 21-07-2006, 15:12   #3 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 1.244
Hi,

danke erstmal für die Antwort.

Aber so einfach ist es ebend nicht.

Die Elemente in den Arrays werden ständig verändert und stellen verschiedene Farben dar. Stell dir ein Schachbrett vor. Ich muß jetzt prüfen, wieviel Farben
diagonal zusammenpassen.
__________________
Mfg aus Brandenburg.

harego

Spiel

Zur Page
harego ist offline   Mit Zitat antworten
Alt 21-07-2006, 15:33   #4 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Hallo!
Wenn ich das richtig verstehe, dann so hier:
PHP-Code:
ar0 = [000"a"1111];
ar1 = [11"a"10000];
ar2 = [2"a"456789];
ar3 = ["a""b""c""d""e""f""g""h"];
_________________________;
var 
arr = [];
var 
zahl 0;
for (var 
0i<8i++) {
    for (var 
0m<4m++) {
        if (
_root["ar"+m][i] == _root["ar"+(m+1)][i-1]) {
            
arr.push(_root["ar"+m][i]);
        }
    }
}
arr.sort();
for (var 
0n<arr.lengthn++) {
    if (
arr[n] == arr[n+1]) {
        
zahl++;
    } else {
        
trace(arr[n]+" trifft "+(zahl+2)+" mal zu.");
        var 
zahl 0
    
}

__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 21-07-2006, 16:13   #5 (permalink)
Neuer User
 
Registriert seit: Jan 2002
Beiträge: 1.244
Hi Der Frager,

Danke. Sieht gut aus.
__________________
Mfg aus Brandenburg.

harego

Spiel

Zur Page
harego ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 12:59 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele