[Powershell] Dichtsbijzijnde waarde in een array vinden

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Roamor
  • Registratie: Mei 2004
  • Niet online
Ben bezig met een Powershellscript, maar ik kom helaas niet uit het volgende.

De gebruiker vult 2 waarden in, die de afmetingen van een kamer aangeven. Daarin moet een zo maximaal mogelijke tafel komen te staan. Mijn suggestie was om de array met beschikbare tafelmaten als dropdown-menu aan te bieden, maar dit was niet wenselijk (moest nog laagdrempeliger, zodat fouten geëlimineerd werden). Mijn programma moet dit dus zelf uitzoeken.

Kortom; hoe kan ik de input van de gebruiker vergelijken (=<) met een array van waarden? Bij deze input moet de maximaal te plaatsen tafel uit een CSV bestand worden gehaald. Er is geen beschikking over Excel, anders dacht ik daar aan "vertikaal zoeken".

Voorbeeld van hoe ik de array opbouw:

code:
1
$DropDownArray = Import-Csv $filespath\PrijzenTafel$voering$diepte.csv | Where-Object {$_.Lengte}


De lengtes variëren van 500mm tot 6700mm, en er zit helaas geen vaste afstand tussen de opeenvolgende lengtes. Als dit wel zo zou zijn, dan zou ik nog wel wat zien in reguliere expressies.

Iemand die mij in de goede richting (methoden/ terminologie) kan sturen?

Acties:
  • 0 Henk 'm!

  • HuHu
  • Registratie: Maart 2005
  • Niet online
Maak een array met breedte-x-lengte combinaties van alle tafels, waarbij de kleinste maat steeds de breedte is. Sorteer vervolgens die array van klein-naar-groot. Loop er doorheen en stop wanneer één van de opgegeven maten groter wordt dan de huidige maat in de array. Je grootst mogelijke tafel is dan de vorige maat.

Acties:
  • 0 Henk 'm!

  • Roamor
  • Registratie: Mei 2004
  • Niet online
Dank je voor de suggestie. Je beschrijft mijn "plan B". :) Dat is echter nogal lomp, omdat er in het slechtste geval tweemaal (l x b)zo'n 200 waarden moeten worden vergeleken voor ik de juiste heb.

Er is niet iets dat vanuit de gebruikersinput direct om zich heen kan zoeken naar de dichtsbijzijnde optie?

Acties:
  • 0 Henk 'm!

  • HuHu
  • Registratie: Maart 2005
  • Niet online
Je hebt in een fractie van een seconde dat lijstje doorzocht, ik zie het probleem niet?