Télécharger date.eso

Retour à la liste

Numérotation des lignes :

  1. C DATE SOURCE PV 19/01/10 21:15:00 10073
  2. SUBROUTINE DATE
  3. INTEGER ITTIME(8)
  4. INTEGER FONCTI
  5. INTEGER IMOLET
  6. INTEGER NJOUR,NHEURE,NMIN
  7. INTEGER NB_TIC,NTICMAX,NTICSEC
  8. REAL*8 NSEC
  9. INTEGER MSEC
  10. CHARACTER*6 MOTLET(1)
  11. CHARACTER*10 MOTCLF(8)
  12. CHARACTER*4 MOTMOI(12)
  13. CHARACTER*32 CHADA
  14. -INC CCOPTIO
  15. DATA MOTLET/'LETTRE'/
  16. DATA MOTCLF/'CONVERSION','EPOCH',
  17. &'ANNEE','MOIS', 'JOUR', 'HEURE', 'MINUTE', 'SECONDE'/
  18. DATA MOTMOI/'jan.','fev.','mars','avr.','mai '
  19. & ,'juin','jui.','aout','sep.','oct.','nov.','dec.'/
  20. CALL LIRMOT(MOTLET,1,IMOLET,0)
  21. CALL LIRMOT(MOTCLF,8,FONCTI,0)
  22. IF(FONCTI.EQ.1) THEN
  23. CALL LIRREE(NSEC,1,IRETOU)
  24. NJOUR = INT (NSEC / 86400.)
  25. NSEC = NSEC - 86400. * FLOAT (NJOUR)
  26. NHEURE = INT (NSEC / 3600.)
  27. NSEC = NSEC - 3600. * FLOAT (NHEURE)
  28. NMIN = INT (NSEC / 60.)
  29. NSEC = NSEC - 60. * FLOAT (NMIN)
  30. WRITE(CHADA,10) NJOUR, NHEURE,NMIN, NSEC
  31. CALL ECRCHA(CHADA)
  32. ELSEIF(FONCTI.EQ.2) THEN
  33. CALL OOOZZ1(ITTIME)
  34. NJOUR=ITTIME(1)
  35. * on se place dans l'hypothese (conservatrice) d'une annee bissextile
  36. if(ITTIME(2).EQ.2) NJOUR=NJOUR+31
  37. if(ITTIME(2).EQ.3) NJOUR=NJOUR+60
  38. if(ITTIME(2).EQ.4) NJOUR=NJOUR+91
  39. if(ITTIME(2).EQ.5) NJOUR=NJOUR+121
  40. if(ITTIME(2).EQ.6) NJOUR=NJOUR+152
  41. if(ITTIME(2).EQ.7) NJOUR=NJOUR+182
  42. if(ITTIME(2).EQ.8) NJOUR=NJOUR+213
  43. if(ITTIME(2).EQ.9) NJOUR=NJOUR+144
  44. if(ITTIME(2).EQ.10) NJOUR=NJOUR+274
  45. if(ITTIME(2).EQ.11) NJOUR=NJOUR+305
  46. if(ITTIME(2).EQ.12) NJOUR=NJOUR+335
  47. NANNEE=ITTIME(3)-1
  48. NJOUR=NJOUR+NANNEE*366
  49. MSEC = NJOUR*86400+ITTIME(4)*3600+ITTIME(5)*60+ ITTIME(6)
  50. nSEC=FLOAT(MSEC)
  51. CALL ECRREE(NSEC)
  52. ELSEIF(FONCTI.EQ.3) THEN
  53. CALL OOOZZ1(ITTIME)
  54. ITTIME(3) = ITTIME(3) + 1900
  55. CALL ECRENT(ITTIME(3))
  56. ELSEIF(FONCTI.EQ.4) THEN
  57. CALL OOOZZ1(ITTIME)
  58. IF(IMOLET.EQ.0) THEN
  59. CALL LIRMOT(MOTLET,1,IMOLET,0)
  60. ENDIF
  61. IF(IMOLET.EQ.0) THEN
  62. CALL ECRENT(ITTIME(2))
  63. ELSE
  64. CHADA = MOTMOI(ITTIME(2))
  65. CALL ECRCHA(CHADA(1:4))
  66. ENDIF
  67. ELSEIF(FONCTI.EQ.5) THEN
  68. CALL OOOZZ1(ITTIME)
  69. CALL ECRENT(ITTIME(1))
  70. ELSEIF(FONCTI.EQ.6) THEN
  71. CALL OOOZZ1(ITTIME)
  72. CALL ECRENT(ITTIME(4))
  73. ELSEIF(FONCTI.EQ.7) THEN
  74. CALL OOOZZ1(ITTIME)
  75. CALL ECRENT(ITTIME(5))
  76. ELSEIF(FONCTI.EQ.8) THEN
  77. CALL OOOZZ1(ITTIME)
  78. CALL ECRENT(ITTIME(6))
  79. ELSE
  80. CALL OOOZZ1(ITTIME)
  81. ITTIME(3) = ITTIME(3) + 1900
  82. IF(IMOLET.EQ.0) THEN
  83. WRITE(CHADA,20) ITTIME(1), ITTIME(2), ITTIME(3), ITTIME(4),
  84. & ITTIME(5),ITTIME(6)
  85. ELSE
  86. WRITE(CHADA,30) ITTIME(1), MOTMOI(ITTIME(2)), ITTIME(3),
  87. & ITTIME(4),ITTIME(5)
  88. ENDIF
  89. CALL ECRCHA(CHADA)
  90. ENDIF
  91. RETURN
  92. 10 FORMAT(I9,'J ',I2.2,'H ',I2.2,'min ',F6.3,'sec')
  93. 20 FORMAT(I2.2,'/',I2.2,'/',I4.4,' - ', I2.2,':',I2.2,':',I2.2)
  94. 30 FORMAT(I2.2,' ',A4,' ',I4.4,' - ', I2.2,'H',I2.2,'min')
  95. END
  96.  
  97.  
  98.  
  99.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales