Bonsoir à tous comme k'indique l'intitulé j'aurais besoin d'aide pour finir un programme en fortran 95 le but est que j'ai un un dossier contenant les coordoné d'un polygonne et un dosier contenant les coordoné de points mais la je suis bloqué je vous copie ici mon script merci d'avance
Code:program poininpoly !2 programme fortran 19/09/2011 !Declare l'ensemble des variable pour ne pas oublié les chiffres après la virgule implicit none !Declaration des variables !declaration compteur integer :: compt, stat ,compt1, stat1,j !declaration de vecteur integer, parameter :: npmax=100 real, dimension (npmax) :: X,Y real :: A,B,Z,W !Lecture du polynome !ouverture du fichier open (11,file="poly.txt") !boucle stat=0 compt=0 do while (stat ==0) !lecture !compteur de ligne compt=compt+1 !condition d'erreur if (compt>npmax) then write (*,*) "/!\erreur npmax < nb de ligne :changer nombre de ligne/!\" stop endif read (11,*,iostat=stat) X(compt),Y(compt) ! condition pour retour if (stat==0) then !ecrit le tableau write (*,*) X(compt),Y(compt) endif !fin de boucle end do !affiche a lecran le tableau !fin de boucle compt=compt-1 write (*,*) "nb ligne:",compt !lecture des points !ouverture du fichier open (12,file="tableau_point.txt") stat1=0 compt1=0 !boucle do while (stat1 ==0) !lecture read (12,*,iostat=stat1) A,B !compteur de ligne compt1=compt1+1 !condition pour retour if (stat1==0) then !ecrit le tableau write (*,*) A,B endif !fin de boucle end do !affiche a lecran le tableau compt1=compt1-1 write (*,*) "nb ligne:",compt1 !calcul de l'equation de droite !boucle pour chaque coté du poly do j = 1, compt W(J)=((Y(j+1))-(Y(j)))/(((X(j+1))-(X(j))) Z(J)=Y(j)-W(j)*X(j) !verif si point est compris entre la droite !si oui !calcul de l'intersection !boucle pour chaque coté du poly !si intersection incrémenté de 1 un compteur !verif si le mod de nb dint sur 2 = 0 ou 1 !si 1 dehors si 0 dedans donc incrémté un compteur de 1 !enregistre dans un fichier les point qui sont dedans !fin de programme end
-----