| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Sep 2004 Ort: Zürich
Beiträge: 62
| Array Problemchen...??
Hallo zusammen! Ich habe da ein Problem mit dem auslesen von Daten aus einem simplen Array. Es sollte folgendes tun: Das Array besteht aus 6 Zahlen, ich versuche nun die zu eruieren welche 1. Positiv ist, und 2. möglichst nahe bei 0 liegt. Bsp: -1, -66, 900, 4, 187, 5.77 --> muss 4 ausgeben. Es läuft jedoch nicht. Ich habe die Abfrage in 2 Teile gegliedert. Zuerst suche ich eine positive Zahl, und danach diejenige, welche am nächsten bei 0 liegt. Läuft aber nicht, und ich verzweifle!!!! Code: lb_array = new Array(-1, -2, -3, 4, -5, -6);
xz = 0;
for(zaehler = 0; zaehler < 5 || xz > 0; zaehler++)
{
if(lb_array[zaehler] > 0)
{
xz = zaehler;
}
}
if(xz > 0 && xz != 5)
{
temp = lb_array[xz];
xz++;
for(zaehler = xz; zaehler < 5; zaehler++)
{
if(temp > lb_array[zaehler] && lb_array[zaehler] > 0)
{
temp = lb_array[zaehler];
}
}
}
trace(temp);
} Kann mir jemand helfen oder einen Tipp geben, ich wäre sehr dankbar!! Gruss Patrick
__________________ I'm trying hard and not to give up! |
| | |
| | #2 (permalink) |
| freundlich ... Registriert seit: Aug 2002 Ort: Berlin
Beiträge: 588
|
hi, hier ne kleine unsaubere funktion: PHP-Code:
__________________ the universe wants you to win... |
| | |
| | #3 (permalink) |
| Neuer User Registriert seit: Sep 2004 Ort: Zürich
Beiträge: 62
|
Ne unsaubere Funktion???? Das funktioniert ja super... Ich versuche schon den ganzen Nachmittag das zu lösen, und dann kommt so was... Ich muss jetzt nur noch alles verstehen, und dann ist alles i.o, aber funktionieren tuts wie geschmiert... Danke vielmals für deine Hilfe!!!! Gruss Patrick
__________________ I'm trying hard and not to give up! |
| | |
| | #4 (permalink) |
| freundlich ... Registriert seit: Aug 2002 Ort: Berlin
Beiträge: 588
|
naja, das geht bestimmt noch schöner... aber ich seh grad: wenn in dem array ne 0 enthalten ist, würde die funktion die 0 auch zurückgeben als kleiinste zahl. wenn du eine zahl über 0 willst musst du folgenden teil: if( ar[i] >= 0 ) so ändern: if( ar[i] > 0 ) *m
__________________ the universe wants you to win... |
| | |
| | #6 (permalink) |
| All-rounder Registriert seit: Mar 2004 Ort: Bayerische Rhön
Beiträge: 2.507
|
Deine Funktion ist doch super! Schade, dass man das Array nicht per sort(), sortieren kann. Es müsste doch möglich sein Zahlen zu sortiern oder?
__________________ -------------------------------- Ich klicke, ergo bin ich. (me) -------------------------------- |
| | |
| | #8 (permalink) |
| All-rounder Registriert seit: Mar 2004 Ort: Bayerische Rhön
Beiträge: 2.507
|
@ maddin79 ![]() Sicherlich habe ich schon Bücher, die FlashHilfe und auch das Internet durchsucht. Array.sort() wandelt aber die Array Elemente vor dem Sortieren, in Strings um. Irgendwie habe ich es noch nicht hinbekommen, auf einfache Art und Weise ein Array mit Zahlen zu sortieren.
__________________ -------------------------------- Ich klicke, ergo bin ich. (me) -------------------------------- |
| | |
| | #9 (permalink) |
| freundlich ... Registriert seit: Aug 2002 Ort: Berlin
Beiträge: 588
|
wie wär's hiermit: PHP-Code: du kannst für sort deine eigene funktion schreiben. dann wird auch nix unnötig in strings umgewandelt... *m
__________________ the universe wants you to win... |
| | |
| | #10 (permalink) |
| All-rounder Registriert seit: Mar 2004 Ort: Bayerische Rhön
Beiträge: 2.507
|
@ LoRMiddleCLass Ich kann es einfach nicht 100%ig nachvollziehen. Kannst Du das bitte mal mit if formulieren. Das wäre echt super.
__________________ -------------------------------- Ich klicke, ergo bin ich. (me) -------------------------------- |
| | |
| | #11 (permalink) |
| Neuer User Registriert seit: Sep 2004
Beiträge: 36
|
Na so ein Zufall, das mit dem Sortieren musste ich auch heute machen... Also, wenn du ein Array mit Zahlen Sortieren willst, sieht das so aus: Code: a = [-7, 5,3, -90, 90]; a.sort(Array.NUMERIC); Gruß Sebezahn |
| | |
| | #12 (permalink) |
| All-rounder Registriert seit: Mar 2004 Ort: Bayerische Rhön
Beiträge: 2.507
|
@ sebezahn Super! Das habe ich gesucht. Wieso habe ich das nicht selbst gefunden?
__________________ -------------------------------- Ich klicke, ergo bin ich. (me) -------------------------------- |
| | |
| | #13 (permalink) |
| All-rounder Registriert seit: Mar 2004 Ort: Bayerische Rhön
Beiträge: 2.507
|
@ LoRMiddleCLass Ok, ich habe es schon selbst dechiffriert. ActionScript:
__________________ -------------------------------- Ich klicke, ergo bin ich. (me) -------------------------------- Geändert von thebiz (23-09-2004 um 01:15 Uhr) |
| | |
| | #14 (permalink) |
| All-rounder Registriert seit: Mar 2004 Ort: Bayerische Rhön
Beiträge: 2.507
|
@ LoRMiddleCLass Das Teil funktioniert nicht richtig. Gebe mal noch eine 4 ins Array. Dann kommt eine 0 als Ergebnis. Verstehen kann ich die komplexe Sortierfunktion nicht. Danke sebezahn würd ich es so lösen: ActionScript:
__________________ -------------------------------- Ich klicke, ergo bin ich. (me) -------------------------------- Geändert von thebiz (23-09-2004 um 02:01 Uhr) |
| | |
| | #15 (permalink) |
| freundlich ... Registriert seit: Aug 2002 Ort: Berlin
Beiträge: 588
|
hi biz, in der funktion hat ein '=' gefehlt: PHP-Code: hier in der ausgeschriebenen form: PHP-Code: allerdings muss ich ja sagen, dass diese funktion mit ternären operatoren ja nah an selbstbefriedigung grenzt. im echten leben ziehe ich allemal meine erste oder deine letzte version vor. aber tapfer, dass du das ding entzippt hast... zum verständniss: du hast ja schon alles ausführlich hingeschrieben. die funktion bekommt nach und nach immer zwei zahlen aus dem array und vergleicht sie. wie in der flashhilfe unter array.sort steht: a < b return -1 a == b return 0 a > b return 1 mehr macht die funtktion auch nicht, außer, dass, wenn eine zahl negativ ist, sie automatisch als größer als jede positive zahl angesehen wird. das ist eigentlich alles. grüße *m
__________________ the universe wants you to win... |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |