Excavadora amb bateria ====================== Una empresa constructora fa servir una excavadora automatitzada per obrir túnels. L'excavadora treballa en cicles i excava una quantitat de metres que disminueix amb cada cicle degut al desgast. Cada cicle consumeix energia de la bateria. Es vol saber si amb l’energia disponible és possible excavar com a mínim una distància determinada. La quantitat de metres excavats en el cicle *n*-èssim es calcula amb la fórmula: .. math:: metres = \frac{6}{1 + 0.5 \cdot (n - 1)} És a dir: - Al cicle 1, excava 6.0 metres. - Al cicle 2, excava 4.0 metres. - Al cicle 3, excava 3.0 metres. - I així successivament. L’energia consumida per cada cicle és igual als metres excavats en aquell cicle. Dissenya la funció següent i desa-la al fitxer ``excavadora.py``: .. py:function:: excavadora.cicles_per_excavar(d, energia_maxima) Retorna el nombre mínim de cicles necessaris per excavar com a mínim ``d`` metres sense superar el total d'energia disponible. Si no és possible arribar a la distància desitjada amb l'energia donada, la funció ha de retornar ``-1``. :param float d: Distància mínima a excavar. :param float energia_maxima: Energia total disponible. :rtype: int :return: Nombre mínim de cicles necessaris per arribar o superar la distància ``d``, o ``-1`` si no és possible amb l’energia disponible. Els següents doctests mostren exemples del que ha de fer la funció: .. literalinclude:: test-cicles-per-excavar.txt :language: python3 :lines: 3-10 .. note:: Disposes de més tests al fitxer :download:`test-cicles-per-excavar.txt` Disposeu de solucions al fitxer :download:`excavadora.py`