Temps estimé: 20 minutes
Exercice: Exercices sur V(g)
Exercice 1
Considérez le code suivant :
public class GestionnaireEvenement {
public Siege acheter(Evenement evenement) {
Siege siegeTrouve = null;
int places = evenement.getPlacesDisponibles();
evenement.setPlacesDisponibles(places - 1);
for (Siege siege: evenement.getSieges()) {
if (siege.getStatus() == SiegeStatut.DISPONIBLE) {
siege.setDisponible(false);
siegeTrouve = siege;
}
}
return siegeTrouve;
}
}
Quel est la complexité cyclomatique v(g)
de la méthode GestionnaireEvenement::acheter
?
☑️ Solution
3
Question 2
Considérez le code suivant :
public class PereNoel {
private static final int NB_CADEAUX = 3;
public void distribuerAuClient(Client client) {
Cadeau cadeau;
if (client.getAge() < 18) {
cadeau = new BoiteLego();
} else {
cadeau = new BouteilleVin();
}
for (int i = 0; i < NB_CADEAUX; i ++) {
client.accepterCadeau(cadeau);
}
}
}
Quel est la complexité cyclomatique v(g)
de la méthode PereNoel::distribuerAuClient
?
☑️ Solution
3
Question 3
Considérez le code suivant :
public class Camera {
public boolean allumer() {
if (driver == null) {
driver = DriverCamera.creer();
if (drive == null) {
return false;
}
}
byte adresse = driver.obtenirAddresse();
if (adresse.equals("0x00000")) {
return false;
}
driver.ecrireAdresse(adresse, "0x000001");
return true;
}
}
Quel est la complexité cyclomatique v(g)
de la méthode Camera::allumer
?
☑️ Solution
4