tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
3
ZUGRIFFE
706
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    LrIuNlUzX LrIuNlUzX ist offline Mitglied Bronze
    Registriert seit
    Nov 2002
    Beiträge
    36
    hi,
    ich möchte in der deklaration einer if anweisung ein array mit einem skalar vergleichen.
    d.h. ich habe in einem skalar ein wert, den ich mit jedem feld des array's vergleichen möchte ... stimmt einer überein. dann soll der inhalt des if-blocks ausgeführt werden.

    kann mir dabei vieleicht jemand weiterhelfen?

    danke im voraus.
     

  2. #2
    Avatar von Mark
    Mark Mark ist offline Mod | Cinema4D
    tutorials.de Moderator
    Registriert seit
    Aug 2003
    Ort
    Vienna:Austria
    Beiträge
    8.123
    Blog-Einträge
    10
    Hi!

    Kenne da nur zwei Varianten:
    my $scalar = 5;
    my @array = (1,3,5,8);

    1)Vorherige Abfrage-Schleife:
    my $found;
    foreach (@array) {
    $found = 1 if ($_ == $scalar);
    }
    if ($found) {
    ...

    2)Über einen Hash:
    my %hash;
    foreach (@array)
    $hash{$_} = 1;
    }
    if ($hash{$found}) {
    ...

    ...sieht nicht besonders elegant aus, aber habe bisher keine Alternative gefunden...
     
    ... bitte keine C4D-Fragen per PN ...
    +++ OUT NOW for CINEMA4D:
    Al'em - Free Align Plugin + Shaderpack Vol 1 - Free Shaders
    + Roll-It v1.0 - Free Roll Plugin + Egg-Objekt - Free Egg Primitive +++
    eggtion.net

  3. #3
    Avatar von Mark
    Mark Mark ist offline Mod | Cinema4D
    tutorials.de Moderator
    Registriert seit
    Aug 2003
    Ort
    Vienna:Austria
    Beiträge
    8.123
    Blog-Einträge
    10
    Hi!

    Obwohl ... ein grep sollte es ja eigentlich packen:

    if (grep($_ == $scalar,@array)) {
    ...
     
    ... bitte keine C4D-Fragen per PN ...
    +++ OUT NOW for CINEMA4D:
    Al'em - Free Align Plugin + Shaderpack Vol 1 - Free Shaders
    + Roll-It v1.0 - Free Roll Plugin + Egg-Objekt - Free Egg Primitive +++
    eggtion.net

  4. #4
    LrIuNlUzX LrIuNlUzX ist offline Mitglied Bronze
    Registriert seit
    Nov 2002
    Beiträge
    36
    danke,


    if (grep($_ == $scalar,@array)) {
    das geht so nicht wirklich... bei mir macht der das immer...

    aber, so:
    if (grep($scalar,@array)) {

    gehts!

    du hast mich auf die idee gebracht...

    fetten dank !
    Geändert von LrIuNlUzX (03.10.03 um 00:17 Uhr)
     

Ähnliche Themen

  1. Deklaration einer Feldvariablen
    Von Delphineuling im Forum Delphi, Kylix, Pascal
    Antworten: 1
    Letzter Beitrag: 23.07.10, 10:01
  2. Antworten: 7
    Letzter Beitrag: 23.07.09, 12:54
  3. Array deklaration (Rückgabewert)
    Von baccula im Forum C/C++
    Antworten: 2
    Letzter Beitrag: 26.08.07, 12:49
  4. Antworten: 4
    Letzter Beitrag: 11.01.06, 22:03
  5. Dynamische Array Deklaration
    Von Jai im Forum Visual Basic 6.0
    Antworten: 8
    Letzter Beitrag: 31.08.05, 22:46