← Back
ExamFull examExam paper onlyItalian

20230114

Study material for Ingegneria del Software, shared by the Studwiz community and reviewed by moderators.

Ingegneria del SoftwareFull exam

Document information

What's included in this study material

Study material for Ingegneria del Software, shared by the Studwiz community and reviewed by moderators.

Import quality: text was extracted directly from the original document.

Extracted content from the document

Representative passages recognised in different parts of the material. The full extracted text remains available to search, while this compact preview makes the page easier to read.

Page 1

Ingegneria del Software — Soluzione del Tema 14/01/2023 Esercizio 1 Si consideri la seguente classe SpeedLimits per memorizzare i limiti di velocit `a per i vari segmenti ( RoadSegments) di una strada. La strada inizia al km 0 e ha una lunghezza di len() km. Il costruttore assegna lo stesso limite di velocit `a all’intera strada. Un segmento (RoadSegment) `e definito come un tratto di strada che inizia e termina con un cambio di limite di velocit`a e all’interno del quale il limite di velocit`a non cambia. Il primo segmento inizia al km 0 e l’ultimo segmento termina al km len() (escluso). public class SpeedLimits { // Considera una strada di lunghezza len e imposta a speedLimit il limite // di velocita’ per l’intera strada. public SpeedLimits(int speedLimit, int len); // Ritorna la lunghezza della strada in km. public /*@ pure @ */ int len(); // Ritorna il limite di velocita’ al km specificato. public /*@ pure @ */ int getSpeedLimitAt(int km); // Imposta il limite di velocita’ a speedLimit per il tratto di strada che inizia // al km start (incluso) e finisce al km end (escluso). // Il limite di velocita’ deve essere positivo e inferiore o uguale a 130 km orari. // Lancia una InvalidBoundariesException se gli estremi del tratto di strada non sono validi. public void changeSpeedLimit(int start, int end, int speedLimit) throws InvalidBoundariesException; // Ritorna la lista dei segmenti contenuti nella strada. I segmenti sono // ritornati in ordine (da quello che inizia per primo a quello che inizia per ultimo). public /*@ pure @ */ List<RoadSegment> getSegments(); } public /*@ pure @ */ RoadSegment { // Ritorna il km di inizio del segmento (incluso nel segmento). public /*@ pure @ */ int getStart(); // Ritorna il km di fine del segmento (escluso dal segmento). public /*@…

Preview

First page of the document.

First page: 20230114