Luchtvaartmaatschappijen hanteren ook een strikt beleid als het over het handbagage gaat. Er wordt een toeslag aangerekend als de handbagage de toegelaten limieten voor gewicht/afmetingen overschrijdt.
De limiet voor het totale gewicht van de handbagage en één persoonlijk item (bv. handtas, aktetas, laptoptas, cameratas …) hangt af van de luchtvaartmaatschappij. Het gewicht van het persoonlijk item wordt bij de handbagage gerekend.
Voor het extra gewicht wordt er een toeslag gerekend van 10 euro per kilo (afronding gebeurt op het einde).
Voor alle luchtvaartmaatschappijen worden dezelfde limieten gebruikt voor de afmetingen (in cm en inclusief zakken, wielen en handvaten). De maximumafmetingen voor handbagage is 55x40x23. Er is één persoonlijk item toegelaten met maximale afmeting 40x30x10 .
Per item dat minstens één overtreding heeft op een afmeting wordt een vast bedrag van 12,5 EUR gerekend.
In deze oefening schrijven we twee hulpfuncties:
De functie splits(afmetingen)
heeft als enige parameter een string afmetingen
in de vorm 23x55x40. De functie zet dit om naar een lijst met de drie afmetingen (als reeel getal) en in dalende volgorde. De functie geeft deze geordende lijst als resultaat terug. Merk op: in de string staan de afmetingen niet noodzakelijk in dalende volgorde!
De logische functie check_dim(bagage, max)
heeft twee parameters. De eerste parameter bagage
is een lijst met de drie afmetingen van de bagage. De tweede parameter max
is een lijst met de maximale afmetingen voor de bagage. Je mag in deze functie veronderstellen dat beide lijsten geordend zijn in dalende volgorde.
De functie geeft True
terug als de drie afmetingen van de bagage kleiner zijn dan de overeenkomstige maximale afmeting, anders wordt False
teruggegeven.
>>> splits("23x55x40")
[50.0, 40.0, 23.0]
>>> check_dim([50, 40, 23], [55, 40, 23])
True
>>> check_dim([50.4, 41.5, 23], [55, 40, 23])
False