[fortran] transtypage
Fermé
Char Snipeur
Messages postés
9696
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
-
10 oct. 2005 à 17:19
hssissen Messages postés 844 Date d'inscription mercredi 20 juillet 2005 Statut Membre Dernière intervention 9 janvier 2017 - 11 oct. 2005 à 19:12
hssissen Messages postés 844 Date d'inscription mercredi 20 juillet 2005 Statut Membre Dernière intervention 9 janvier 2017 - 11 oct. 2005 à 19:12
3 réponses
crabs
Messages postés
908
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
3 août 2008
506
10 oct. 2005 à 18:03
10 oct. 2005 à 18:03
Salut,
Pas de cast en fortran, le compilateur assure ça lors de l'affectation.
Je dis ça vis à vis du seul fortran que j'ai pratiqué : le f77
Ce qui donner le résultat suivant
A+, crabs
Pas de cast en fortran, le compilateur assure ça lors de l'affectation.
Je dis ça vis à vis du seul fortran que j'ai pratiqué : le f77
C Declaration REAL*8 x8, a, b REAL*4 x4 C Calcul a=1. b=11. x8=a/b C changement de type x4=x8 C resultat write(*,100) x8 write(*,101) x4 100 format ('REAL*8 x = ', D25.20 ) 101 format ('REAL*4 x = ', E25.20 ) RETURN END
Ce qui donner le résultat suivant
REAL*8 x = .90909090909090911614E-01 REAL*4 x = .90909093618392944336E-01
A+, crabs
Char Snipeur
Messages postés
9696
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 297
11 oct. 2005 à 09:41
11 oct. 2005 à 09:41
ok. Merci Crabs, je vais essayer ta méthode.
Mais lors de l'apel d'une fonction, il modifie aussi le type?
si l'argument de tanh doit être un real*4 et que je le passe un real*8 il va convertir.
Sinon, je pense que le fortran inclu dans gcc est bien du fortran 77.
Merci encore.
Mais lors de l'apel d'une fonction, il modifie aussi le type?
si l'argument de tanh doit être un real*4 et que je le passe un real*8 il va convertir.
Sinon, je pense que le fortran inclu dans gcc est bien du fortran 77.
Merci encore.
crabs
Messages postés
908
Date d'inscription
lundi 18 avril 2005
Statut
Membre
Dernière intervention
3 août 2008
506
11 oct. 2005 à 18:07
11 oct. 2005 à 18:07
Salut,
J'ai fait qu'un peu du fortran sur MicroSparc, UltraSparc et R4400, mais je
crois me rappeler que la lib mathématique en f77 elle est en real*8 et que oui
il fait les adaptations lors de l'appel.
J'ai essayer sous mon linux de faire un atanh, mais la fonction n'est pas incluse
dans le g77 :-(
Enfin si un expert fortran passe par là, je suis preneur d'une infirmation ou
confirmation sur le sujet...
A+, crabs
J'ai fait qu'un peu du fortran sur MicroSparc, UltraSparc et R4400, mais je
crois me rappeler que la lib mathématique en f77 elle est en real*8 et que oui
il fait les adaptations lors de l'appel.
J'ai essayer sous mon linux de faire un atanh, mais la fonction n'est pas incluse
dans le g77 :-(
Enfin si un expert fortran passe par là, je suis preneur d'une infirmation ou
confirmation sur le sujet...
A+, crabs
hssissen
Messages postés
844
Date d'inscription
mercredi 20 juillet 2005
Statut
Membre
Dernière intervention
9 janvier 2017
50
11 oct. 2005 à 19:12
11 oct. 2005 à 19:12
Salut, Essaie avec le type double x. Avec les recentes versions du compilateurs du Fortran f77, f90..., les "real" sont mal supportes, car j'·ai eu au passé ce type de problemes.