algorithmique (école d'ingénieur) · Chapitre 11 · Exercice de TD
Plus faible précondition
Programmes justes : logique de Hoare et invariants · niveau 2
Énoncé
Calculer la plus faible précondition qui rend vrai chacun des triplets suivants (les variables sont entières).
-
y = x * x; x = y + 1; -
if (x < 0) x = -x; x = x - 1; -
s = s + T[k]; k = k + 1;. Que retrouve-t-on ?
Corrigé
- Avant
x = y + 1;: , soit . Avanty = x * x;: . Donc , c'est-à-dire ou . - Avant
x = x - 1;: . Pour la conditionnelle (sanselse) : , soit , c'est-à-dire . - Avant
k = k + 1;: . Avants = s + T[k];: , c'est-à-dire . On retrouve l'invariant de la somme d'un tableau : le corps de boucle le conserve.
100 % gratuit
La suite du chapitre est sur Adloun
- 12 autres exercices corrigés dans ce chapitre
- Les 2 QCM du chapitre, le premier sans compte
- Le tuteur, qui guide pas à pas sans donner la réponse
Sans compte : le cours et le premier QCM. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.