Home

TD2 - IN2P3

image

Contents

1. Le symbole repr sente simplement une espace mais tous les autres caract res sont signi ficatifs Par ailleurs les diff rences de polices gras italiques etc ne sont que d coratives puisque le source n est qu un simple fichier texte Debug apr s avoir g n r l ex cutable et l avoir lanc sur la machine il faut s assurer que le programme satisfait bien aux objectifs d finis dans la phase d analyse et ventuellement le corriger si ce n est pas le cas Attention Ne pas n gliger les deux premi res tapes l ana lyse et le pseudo code au risque de voir la phase de debug de loin la plus fastidieuse s terniser 2 Dela source l ex cution M me si les autres tapes ne sont pas n gliger nous nous attardons main tenant sur la phase la plus technique de la programmation le codage En pra tique la r alisation et l utilisation d un programme Fortran s articule en 3 tapes Codage l aide de l diteur de texte de votre choix p ex emacs il faut cr er un fichier texte contenant le programme en langage Fortran Par convention le nom du fichier portera l extension f Compilation Il faut alors traduire le fichier source en un ex cutable c est la compilation r alis par un programme sp cifique le compilateur Pour un fichier source prog f on utilise la commande suivante dans un termi nal g7 pog ce qui produit s i
2. Premiers pas en Fortran Module d informatique Licence DSM ENS Lyon TD n 2 2002 2003 24 octobre 2002 y copin ipnl in2p3 fr Objectifs du TD source compilation amp ex cution structure d clarations 1 M thodologie de programmation L utilisation d un langage de programmation p ex le Fortran permet de g n rer un programme binaire ex cutable par la machine l ex cutable partir d un simple fichier texte un fichier ASCII indiquant pr cis ment et dans une syntaxe particuli re la marche suivre le fichier source En g n ral on ne programme pas uniquemenent pour le plaisir mais pour faire ex cuter par la machine des t ches pr cises La programmation peut se d composer en quelques grandes tapes Analyse il s agit de bien pr ciser dans un langage libre ce que l on veut que la machine fasse et les m thodes g n rales utiliser P ex afficher la cha ne de caract res Hello world dans le terminal Pseudo code il s agit maintenant de d crire en d tail les diff rentes tapes du programme l algorithme dans un langage formel P ex Programme Hello afficher Hello world fin Codage il faut alors traduire l algorithme d crit pr c demment dans le lan gage de programmation proprement dit ici en Fortran Pex C2345 Programme minimal ROGRAM hello PRINT Hello world END uuu n unuunu
3. es assai sonner votre go t Entr e Sortie L entr e et la sortie standards correspondent au clavier et l cran respectivement PROGRAM pythagore C Affiche z sqrt xxx2 yxx 2 x et y entres au clavier IMPLICIT NONE REAL Xx y 2Z PRINT Entrer 2 nombres READ x y z sqrt x 2 y 2 WRITE hypothenuse 7z END Fichiers Pour crire ou lire dans un fichier il faut l avoir ouvert au pr alable puis le fermer PROGRAM sinus C stocke une periode de sinusoide dans le fichier C sinus dat la periode et le nb de points etant 20 25 30 35 C donnee par le fichier input dat IMPLICIT NONE INTEGER in out INTEGER n i REAL periode x y DOUBLE PRECISION pi C Ouverture d un fichier en lecture PRINT Lecture du fichier input dat in 1 OPEN in file input dat status old READ in periode READ in n C Ouverture d un fichier en ecriture PRINT Creation du fichier sinus dat out 2 OPEN out file sinus dat status unknown C Boucle sur une periode pi 4 atan l PRINT Pi pi DO i O n x i periode n y sin x periode 2 pi WRITE Out x y END DO C Fermer les fichiers PRINT Fermeture des fichiers CLOSE in CLOSE out END
4. ex cutoire Le corps du programme principal est encadr par les instructions de d claration pr c dentes et END Chaque ligne contient au maxi mum une instruction certaines instructions pouvant s tendre sur plusieurs lignes l aide du caract re de continuation en 6 colonne Il est de tr s bon ton de commenter un maximum son programme afin d expliciter son objectif sa d marche ses variables etc La structure d un programme Fortran est donc typiquement C23456 PROGRAM nomduprogramme C Commentaires sur le programme C Date de creation auteur ver sion C Objectif mode d emploi ligne de compilation etc C Declaration explicite des variables IMPLICIT NONE declaration _1 declaration _2 C Instructions instruction_1 instruction _2 20 end C234567 3 3 Liens utiles Quelques liens utiles concernant le Fortran le Professional Programmer s Guide to Fortran77 http www star le ac uk cgp prof77 html les FORTRAN Programming Language Resources around the World http www eeng brad ac uk help packlangtool langs fort source htEml le Fortran Tutorial de http gershwin ens fr vdaniel Doc Local Langages Program Scientific Fortran Tutorial des supports de cours http dept info labri u bordeaux fr billaud travaux IntroF77 intro f77 html 4 Premiers programmes Exercice crire compiler et ex cuter les programmes suivants L
5. l n y a pas d erreur dans le code un ex cutable nomm par d faut a out Pour imposer un nom plus parlant p ex prog exe on peut utiliser la commande suivante g77 o prog exe prog f Si la compilation n aboutit pas le compilateur vous indique l endroit dans votre fichier source o il ne comprend pas la syntaxe ou la logique Fortran Il vous faut alors corriger les erreurs avant de relancer la com pilation Ex cution Il s agit maintenant d ex cuter votre programme dans le terminal p ex l aide de la commande prog exe Si vous n obtenez pas le r sultat escompt ou si le programme s inter rompt l ex cution avec un affichage du style core dump alors les en nuis commencent Il faut debugger votre programme c d identifier et corriger l erreur conceptuelle et non pas simplement de syntaxe pr sent dans votre programme Exercice Recopier tr s pr cis ment y compris les espaces le code Fortran de la section pr c dente dans un fichier hello f Compiler et ex cuter votre programme hello exe En tes vous satisfait Pour forcer le compilateur vous avertir du moindre probl me potentiel ajouter l option Wa1l1 la ligne de compilation g77 Wall o prog exe prog f 3 Structure d un programme Fortran 3 1 Format des lignes d instruction L criture d un programme Fortran ob it un format carte fossile des temps anciens o les programmes taient stock s su
6. r cartes perfor es Une ligne de programme standard ne commence en fait qu la 7 co lonne les 6 premiers caract res tant remplis par des blancs cf exemple ci dessous Les instructions ne doivent pas d passer la 72 colonne Pour prolon ger une instruction sur plusieurs lignes il suffit d introduire un caract re quelconque g n ralement un la 6 colonne de la ligne suivante P ex C Ceci est un commentaire C_precedent une instruction s etendant sur 2 lignes C234567 uun n SUM Sin y a E du O A C234567 Dans la 1 colonne la pr sence d un caract re C ou signale que la ligne est un commentaire elle sera totalement ignor e par le compilateur Les colonnes 1 5 servent placer des tiquettes qui seront utilis es pour rep rer une ligne Elles sont utilis es p ex avec l instruction goto ou pour les sp cifications de formats d entr e sortie Contrairement au shell utilis dans vos terminaux Attention Le Fortran ne fait aucune distinction entre ma juscules et minuscules TOTO TotO et toto repr sentent exactement la m me chose Vous pouvez en profiter pour crire en majuscules les mots cl s propres au Fortran vitez toute utilisation de lettres accentu es y compris dans les commen taires et les cha nes de caract res 3 2 Structure g n rale Un prog
7. ramme Fortran se compose de deux parties une partie d clarative la liste des ingr dients et une partie ex cutoire la recette La partie d clarative Tout programme Fortran commence par le mot PROGRAM suivi du nom du programme judicieusement choisi sans espace ni accent Vient alors la partie d claration des variables Toute variable poss de un type Les types usuels sont les suivants INTEGER nombre entier REAL nombre r el simple pr cision DOUBLE PRECISION nombre r el double pr cision COMPLEX nombre complexe LOGICAL variable bool enne CHARACTER cha ne de caract res lettres chiffres symboles etc Il est hautement pr f rable que toute variable soit explicitement d clar e c est dire que son type doit tre d fini dans l unit dans laquelle elle sera utilis e Pour forcer ce comportement Ne pas oublier Avant toute mande IMPLICIT NONE d claration utiliser la com Les variables ne sont pas initialis es automatiquement leur valeur im m diatement apr s leur declaration est quelconque Il faut donc bien pen ser les initialiser lorsque c est n cessaire C est galement dans la partie d clarative que l on peut doit ajouter les commentaires pr cisant l auteur la date de cr ation du programme et sa ver sion ses objectifs et son mode d emploi ses limites sa ligne de compilation etc voir exemple ci dessous La partie

Download Pdf Manuals

image

Related Search

Related Contents

Advantech IDS-3112 User Manual  LG 24MP77HM-P LED display  User Manual Of Fingerprint Locker Lock LSLE1011F  キヤノンサービスパック  BRK FG250 Installation  Approx APPC12V2  SpecWare9 Quick Start Guide    german - Kindlinger  CyberGrasp v1.2  

Copyright © All rights reserved.
Failed to retrieve file