zsh naechsten Wert aus 2 Arrays ermitteln Gedankenanstoss

cat1510

Well-Known Member
Hi Leutz,

brauch mal einen Gedankenanstoss.
Mir fehlt gerade jede Idee, wie ich folgendes umsetzen kann/soll.

Es gibt 2 Arrays mit Zahlen:

ar1=( 1 6 12 18 )
ar2=(3 9 15 21)

heute=14


Wie kann ich nun herausfinden, welches der beiden arrays absteigend 'am naechsten' an $heute ist?
In diesem Fall muesste der Wert 12 ausgegeben werden.

Wenn heute=17 dann muss der Wert 15 sein.

Ok mit Schleifen und so weiter ist alles klar.
Es geht auch nicht um den direkten Code.
Was ich bishher habe:

Schleife die von $heute -1 zaehlt und
Schleife die von 30 rueckwaerts zaehlt
Bedingung die rausfindet wann das Element mit dem Element im Array
uebereinstimmt

Das ganze 2 Mal, leider weiss ich nicht, wie ich das verknuepfen soll und wie ich den 'naechst geringeren Wert ermitteln soll. :o(

hier mal als Code:

Code:
m=$YESTERDAY
  for (($m; m > 0; m--)); do
    for ((p=1; p <= ${#KEYBACKUPDAYS}; p++)); do
      if [[ $m = ${KEYBACKUPDAYS[-${p}]} ]]
      then
      MATCHARRAY1=$m
      m=0
      fi
    done
    echo "Aussere Schleife $m"
  done

      m=$YESTERDAY
      for (($m; m > 0; m--)); do
        for ((p=1; p <= ${#COMPLETEDAYS}; p++)); do
          if [[ $m = ${COMPLETEDAYS[-${p}]} ]]
              then
              MATCHARRAY2=$m
              p=$((${#COMPLETEDAYS} + 1))
          fi
        done
      done

Danke fuer Eure Ideen.

CAT
 
Zurück
Oben