site de Fabien Torre


Source de entier-entier.py

1: ### implémentation du type abstrait Entier 2: ### avec des entiers Python 3: 4: # constructeurs 5: 6: def zero(): 7: return 0 8: 9: def succ(n): 10: return n+1 11: 12: def prec(n): 13: return n-1 14: 15: # test 16: 17: def est_nul (n): 18: return (n==0) 19: 20: # affichage 21: 22: def affiche_entier (n): 23: print("cet entier vaut",n) 24: 25: ### opérations de haut niveau 26: 27: # addition 28: 29: def plus(n,m): 30: while not est_nul(n): 31: m = succ(m) 32: n = prec(n) 33: return m 34: 35: # multiplication 36: 37: def fois(n,m): 38: s = zero() 39: while not est_nul(n): 40: s = plus(s,m) 41: n = prec(n) 42: return s 43: 44: ### programme principal 45: 46: affiche_entier(succ(succ(zero()))) 47: 48: x = succ(succ(zero())) 49: y = succ(succ(succ(zero()))) 50: 51: affiche_entier(plus(x,y)) 52: 53: affiche_entier(x) 54: 55: affiche_entier(fois(x,y))
site de Fabien Torre, université de Lille