Tuesday, 10 April 2018

Enregistrement et act param, l'exemple du cours promis

fonction quotient ... a definir (exercice)
fonction modulo ... a definir (exercice)
 

fonction nbSec(E/ time : tHms) : entier ;
Debut    

   retourner (time.heure* 3600) + (time.minute * 60) + time.seconde ; 
Fin ;
 

fonction converthms(E/ nbSec :entier) : tHms ;
Var time : tHms ; reste:entier ;
Debut
    time.heure  ← quotient(nbSec,3600) ; // car slash division ent et div non def
    reste  ←  modulo(nbSec,3600) ;            // car mod non def
    time.minute  ← quotient(reste,60) ;
    time.seconde  ← modulo(nbSec,60) ;
    retourner time ;
Fin ;

Algorithme exCours ;
Type
    tHms=enregistrement heure,minute,seconde : entier ; Fin ;
Var
    dureeSec : entier ;
    dureeH : tHms ;
    mySwitch :bool;
Debut
    lire(mySwitch) ;
    si mySwitch alors  
        lire(dureeSec) ;
        dureeH  ←  converthms(dureeSec) ;
        ecrire(dureeH.heure,dureeH.minute,dureeH.seconde) ; //oui ; avant sinon
    sinon                                                                                                 //car fsi délimite
        lire(dureeH.heure,dureeH.minute,dureeH.seconde) ;     //si always
        ecrire(nbSec(dureeH)) ;
    fsi ;
Fin.

No comments:

Post a Comment

Note: only a member of this blog may post a comment.