Programme
Equilibrium
-
Equilibrium -
Equilibrium -
Bonjour,
j'ai un programme à écrire en fortran : il doit donner la racine carrée d'un nombre a en utilisant la suite un+1= 1/2*(un+a/un) .
Le voilà :
program racine
implicit none
real :: valeur,u
integer :: maxiter,i
PRINT*,'donnez la valeur dont vous voulez calculer la racine'
READ*,valeur
PRINT*,'donnez le nombre ditérations'
READ*,maxiter
u=valeur
!on enlève la possibilité de prendre une racine négative!
if (valeur<0) then
PRINT*,'ce nombre est négatif il nadmet pas de racine'
ELSEIF (valeur==0) then
PRINT*,'la racine de 0 est 0'
ELSE
do i=1,maxiter
u=(1/2)*(u+valeur/u);
enddo
endif
print*,u
end program
Il ne marche pas : à chaque fois que j'entre la valeur du nombre dont on veut la racine et le nombre d'itérations, il me renvoie " NaN" ...J'ai beau chercher je vois pas le problème !
Merci de m'aider !
j'ai un programme à écrire en fortran : il doit donner la racine carrée d'un nombre a en utilisant la suite un+1= 1/2*(un+a/un) .
Le voilà :
program racine
implicit none
real :: valeur,u
integer :: maxiter,i
PRINT*,'donnez la valeur dont vous voulez calculer la racine'
READ*,valeur
PRINT*,'donnez le nombre ditérations'
READ*,maxiter
u=valeur
!on enlève la possibilité de prendre une racine négative!
if (valeur<0) then
PRINT*,'ce nombre est négatif il nadmet pas de racine'
ELSEIF (valeur==0) then
PRINT*,'la racine de 0 est 0'
ELSE
do i=1,maxiter
u=(1/2)*(u+valeur/u);
enddo
endif
print*,u
end program
Il ne marche pas : à chaque fois que j'entre la valeur du nombre dont on veut la racine et le nombre d'itérations, il me renvoie " NaN" ...J'ai beau chercher je vois pas le problème !
Merci de m'aider !
A voir également:
- Programme
- Programme demarrage windows - Guide
- Message programmé iphone - Guide
- Mettre en veille un programme - Guide
- Programme word gratuit - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans un autre programme - Guide
4 réponses
Bjour,
En ce qui concerne le calcul d'une racine carrée par la méthode de "Héron d’Alexandrie", voici un lien qui peut vous aider :
http://membres.lycos.fr/ericmer/Racines/racines.htm
En effet, votre algorithme semble inexact.
Cordialement.
En ce qui concerne le calcul d'une racine carrée par la méthode de "Héron d’Alexandrie", voici un lien qui peut vous aider :
http://membres.lycos.fr/ericmer/Racines/racines.htm
En effet, votre algorithme semble inexact.
Cordialement.
Je ne vois pas non plus comme ça
mais le meilleur moyen pour toi dans ces cas là c'est d'ajouter des print*,u (et éventuellement des print*,valeur) pour voir jusqu'où ton programme se déroule normalement
mais le meilleur moyen pour toi dans ces cas là c'est d'ajouter des print*,u (et éventuellement des print*,valeur) pour voir jusqu'où ton programme se déroule normalement