1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
|
program somme_produit_soustraction_division
implicit none
real :: X , Y , SOM, PROD, SOUS, DIV
integer :: err
write (*,*) "bonjour"
write (*,*) "nous effectuerons simultanement le calcul de la somme du produit et de la division des nombre entiers"
write (*,*) "entrer un nombre (X) :" ; read (*,*,iostat = err) X
if (err /= 0) then ! une erreur IO s'est produite
write(*,*) "Error : not a number" ! Affiche un message d'erreur
stop; ! Interrompt l'exécution
end if
! Si le programme parvient à ce stade, la première entrée est numérique
write (*,*,iostat=err) "entrer le second nombre (Y) : " ; read (*,*, iostat = err) Y
if (err /= 0) then ! Ce bloc (l22:l25) est identique au précédent (l14:l17)
write(*,*) "Error : not a number"
stop;
end if
! Si le programme parvient à ce stade, la seconde entrée est numérique
! Toutes les conditions sont vérifiées pour exécuter le traitement
SOM = X + Y
PROD = X * Y
SOUS = X - Y
DIV = X/Y
write (*,*) "X + Y = " , SOM
write (*,*) "X * Y = " , PROD
write (*,*) "X - Y = " , SOUS
write (*,*) "X / Y = " , DIV
write (*,*) "Merci"
end program somme_produit_soustraction_division |
Partager