with Ada.Text_Io, Ada.Integer_Text_Io; use Ada.Text_Io, Ada.Integer_Text_Io; -- Addition d'heures procedure Ex01b is H1, M1, S1 : Natural; H2, M2, S2 : Natural; H, M, S : Natural; Total_S : Natural; begin -- saisies Put("Veuillez rentrer une heure avec le format h m s : "); Get(H1); Get(M1); Get(S1); Put("Veuillez rentrer une seconde heure avec le format h m s : "); Get(H2); Get(M2); Get(S2); -- Algo -- conversion des deux temps en s et addition des deux résultats Total_S := H1 * (60 ** 2) + M1 * 60 + S1 + H2 * (60 ** 2) + M2 * 60 + S2; -- conversion du résultat en H : M : S --- H H := Total_S / (60 ** 2); Total_S := Total_S - (H * (60 ** 2)); --- M M := Total_S / 60; --- S S := Total_S mod 60; -- Affichage Put(H1, 0); Put('h'); Put(M1, 0); Put('m'); Put(S1, 0); Put("s + "); Put(H2, 0); Put('h'); Put(M2, 0); Put('m'); Put(S2, 0); Put("s = "); Put(H, 0); Put('h'); Put(M, 0); Put('m'); Put(S, 0); Put('s'); end;