Cours-Gratuit
  • Accueil
  • Blog
  • Cours informatique
home icon Cours gratuits » Cours informatique » Cours programmation » Cours Fortran

Débuter avec le langage Fortran étape par étape

Débuter avec le langage Fortran étape par étape
Participez au vote ☆☆☆☆☆★★★★★

Débuter avec le langage fortran étape par étape

...

Chapitre 2

Généralités sur le langage

Fortran

Les contenu des lignes en Fortran doit respecter les quelques règles suivantes :

– Une ligne de commentaire doit commencer par un c ou une * en première colonne.

– Tout ce qui suit un ! dans une ligne est aussi considérécomme un commen¬taire.

– Les instructions:

– doivent commencer à partir de la colonne 7 (ou plus) ;

– se placent automagiquement avec[X]Emacs en appuyant sur la touche TAB ; – ne doivent pas dépasser la colonne 72.

– Les Labels (ou étiquettes) sont entre les colonnes 2 et 5 et gérés automagi¬quement avec [X]Emacs.

– Pour couper une instruction sur plusieurs lignes, on met un caractère quel-conque en colonne 6 des lignes de suite.

La figure 2.1 illustre ces règles.

...

2.1 Organisation d’un programme FORTRAN

Succession de « pavés » élémentaires qu’on appellera blocs fonctionnels. Il en existe 3 sortes :

  1. Le programme principal inclus entre program (facultatif) et end

program nom . . .

end

  1. Les subroutines inclus entre subroutine et end

subroutine nom (arguments) . . .

end

  1. Les fonctions inclus entre function et end

type function nom (arguments) . . .

end

2.2 Programme principal

Le programme principal est obligatoirement présent. Il n’existe qu’un seul pro¬gramme principal. Ce programme principal se découpe en deux parties distinctes successives détaillées ci-dessous.

2.2.1 Partie déclaration

C’est dans cette partie qu’on définit les objets (type + nom) qui seront manipuler par le programme.

2.2.2 Partie instructions

L’exécution d’un programme FORTRAN consiste à dérouler dans l’ordre toutes les instructions de la partie exécutable du programme principal.

Certaines instructions déroutent le pointeur de programme vers d’autres blocs fonctionnels (subroutines ou fonctions)

Chapitre 3

Les données

3.1 Les différents types de données

Le tableau 3.1 résume l’ensemble des types de données manipulables en Fortran. De plus, il est possible d’assembler plusieurs grandeurs dans des tableaux. Ce qui permet de créer des vecteurs, des matrices...

Nous allons maintenant détailléces types.

3.1.1 Type integer

Un integer contient un entier et est représentépar son écriture en base 2 signée sur 4 octets (31 bits pour la valeur plus un bit pour le signe). Ses valeurs possibles sont dans l’intervalle [−231, 231 − 1].

3.1.2 Type real

un real contient un nombre réel et est codéen virgule flottante (IEEE) sur 4 octets 1.

Chaque nombre est représentésous la forme x = f0.mx2e oùm est la mantisse codée sur 23 bits et e est l’exposant, codésur 8 bits (−127 < e < 128).

lcf. documentation FORTRAN SUN §4.2

TAB. 3.1 – Types de données manipulables en Fortran.

Grandeurs numériques

Entiers  integer

                Réels     real

                               double precision

                Complexes         complex

Caractères          character

Grandeurs logiques (vraies ou fausses)               logical

Chapitre 3. Les données

Les valeurs (en valeur absolue) sont comprises dans l’intervalle [1.401 x 10−45, 3.403 x 1038] et il stocke environ 7 chiffres significatifs.

3.1.3 Type double precision

Le double precision est un real plus précis, codéen virgule flottante sur 8 octets dont une mantisse codée sur 52 bits et un exposant codésur 11 bits (−1023 < e < 1024).

Les valeurs (en valeur absolue) sont comprises entre [4.941x10−324,1.798x10308] avec 15 chiffres significatifs.

3.1.4 Type complex

Assemblage de 2 real dans un même objet.

3.2 Constantes numériques

Question : je veux utiliser dans un programme les nombres 1, 3.14, 2 + 3i. Comment les écrire?

3.2.1 Constantes integer

Une constante de type integer est écrite sans point décimal.

Exemples :

1 123 -28 0

3.2.2 Constantes real

Une constante de type real doit obligatoirement comporter :

– soit le point décimal, même s’il n’y a pas de chiffres après la virgule;

– soit le caractère e pour la notation en virgule flottante.

Pour les nombres écrits 0.xxxxx, on peut omettre le 0 avant le point décimal.

Exemples :

Initiation au langage FORTRAN

3.1415 31415e-4 1.6e-19 1e12 .001 -36.

3.2.3 Constantes double precision

Une constante double precision doit obligatoirement être écrite en virgule flottante, le e étant remplacépar un d.

Exemples :

0d0 0.d0

1.d0

1d0 3.1415d0 31415d-4 1.6d-19 1d12 -36.d0

3.2.4 Constantes complex

Une constante de type complex est obtenue en combinant deux constantes réelles entre parenthèses séparées par une virgule. 2.5 + i s’écrira (2.5,1.)

Exemples :

(0.,0.)

(1.,-1.)

(1.34e-7, 4.89e-8)

3.3 Définition de constantes symboliques

Elle permettent de référencer une constante à l’aide d’un symbole.

Elles ne peuvent être modifiées au milieu du programme et sont affectées une fois pour toutes avec le mot-cléparameter dans la section déclarations.

 Chapitre 3. Les données

3.3.1 Syntaxe

parameter (const1=valeur1,const2=valeur2, ...)

Le type de chaque constante doit être déclaréexplicitement ou en suivant les mêmes règles de typage automatique que les variables (cf 4.3). Une constante est toujours locale à un bloc fonctionnel.

3.3.2 Exemple

double precision q

parameter(max=1000, q=1.6d-19)

Chapitre 4

Les variables

Une variable est un emplacement en mémoire référencépar un nom, dans lequel on peut lire et écrire des valeurs au cours du programme.

Les variables permettent (entre autres) de :

– manipuler des symboles;

– programmer des formules.

Avant d’utiliser une variable, il faut :

– définir son type;

– lui donner un nom.

C’est la déclaration. Elle doit être écrite dans la première partie (la partie dé  claration) d’un bloc fonctionnel (programme principal, subroutine ou fonction) dans lequel intervient la variable.

Dans les langages modernes, toute variable doit être déclarée. En FORTRAN, il y a des exceptions obéissant à des règles bien précises.

Une variable est :

– locale si seul le bloc fonctionnel oùelle est déclarée peut y accéder. C’est le défaut;

– globale si tous les blocs fonctionnels peuvent y accéder.

Pour savoir comment rendre une variable globale, voir le paragraphe concernant l’instruction common (10.6).

4.1 Déclaration de variables

4.1.1 A quel endroit ?

Entre le mot-clé program subroutine function  et la première instruction exécutable.

Chapitre 4. Les variables

4.1.2 Syntaxe

type var1, var2, var3, .....

On peut déclarer plusieurs variables du même type sur une même ligne.

4.1.3 Exemple

integer i,j,k

real alpha, beta double precision x,y complex z

4.2 Noms des variables

Pour nommer une variable, il faut respecter les règles suivantes :

– Caractères autorisés :

– toutes les lettres,

– tous les chiffres,

– le caractère « blanc » (déconseillé),

– le caractère « » (« underscore » =~ « moins ») ;

– Le premier caractère doit être une lettre;

– Seuls les 6 premiers caractères sont significatifs : epsilon1 et epsilon2 re

présentent la même variable;

– (Rappel) pas de différence minuscules majuscules.

4.3 Règles de typage implicite

On peut ne pas déclarer une variable (fortement déconseillé), en utilisant les règles suivantes :

Une variable dont le nom commence par i,j,k,l,m,n est automatiquement de type integer.

Une variable commençant par toute autre lettre (de a à h et de o à z) est automatiquement de type real.

Initiation au langage FORTRAN

4.3.1 Directive implicit

Elle permet modifier ces règles par défaut de manière locale à un bloc fonction¬nel.

implicit type (lettre1-lettre2, lettre3, ....)

Toute variable commençant par une lettre comprise entre lettre1 et lettre2 ou par lettre3 sera par défaut du type indiqué.

4.3.2 Exemples

implicit real (a-c,e,w-z)

Tout ce qui commence par a,b,c,e,w,x,y,z sera real

implicit double precision (a-h,o-z)

Similaire à la règle par défaut : tout ce qui commence par i,j,k,l,m,n sera integer, tout le reste double precision (Très Utilisé!!).

implicit complex (z)

Tout ce qui commence par z est complex par défaut.

implicit none

Aucune variable n’est utilisable si elle n’est pas déclarée.

Important : il s’agit de règles applicables aux variables non déclarées. La déclaration d’une variable l’emporte sur les règles implicites.

4.4 Affectation d’une variable

4.4.1 Syntaxe

nomvar = constante      Ex : x=1.23

nomvar = autre variable Ex : x=y

nomvar = opération       Ex:x=y+3.2*z

Chapitre 4. Les variables

4.4.2 Fonctionnement

– Lit la valeur de toutes les variables à droite du signe =; – Effectue les opérations demandées;

– Affecte le résultat à la variable à gauche de =.

4.4.3 Exemple

i = i + 1

Augmente le contenu de la variable i de 1 (on dit aussi « incrémenter » une variable).

Chapitre 5

Opérateurs et fonctions mathématiques

5.1 Opérateurs arithmétiques

Le tableau 5.1 donne la liste des opérateurs arithmétiques de Fortran. Ils sont listés par ordre de prioritécroissante.

Dans une expression, on évalue donc d’abord ** puis /, puis *, et enfin + et -. On peut aussi grouper des sous-expressions entre parenthèses.

5.1.1 Exemples

x=a+b/c-d

évalue a + ~ − d.

~

x=(a+b)/(c+d)

évalue ~+~

~+~.

TAB. 5.1 – Les opérateurs arithmétiques.

Addition

Soustraction      ¬

Multiplication    *

Division                /

Puissance           **

 Chapitre 5. Opérateurs et fonctions mathématiques

5.2 Conversion de type dans une opération

Lorsque deux opérandes de types différents interviennent de chaque cotéd’un opérateur:

  1. l’opérande de type le plus faible est converti dans le type de l’autre opérande
  2. l’opération est effectuée, et le type du résultat est le type le plus fort

Les types sont classés dans l’ordre suivant (du plus fort au plus faible) :

– complex

– double precision

– real

– integer

– logical 1

5.2.1 Exemples

b**2 sera du type de b.

4*a*c sera du type le plus fort de a et de c.

Si a et c sont real, et b double precision, le résultat de b**2-4*a*c sera double precision, mais attention, le produit a*c sera effectuéen simple pr´e¬cision, d’oùune perte de précision possible.

5.2.2 Pièges classiques

2/3 sera du type integer. Autrement dit la division effectuée sera une division entière, et le résultat sera 0. Pour calculer effectivement deux tiers en réel, écrire: 2./3, 2/3. ou 2./3.

Idem pour i/j oùi et j sont deux variables integer. Écrire : real(i)/j

5.3 Conversion de type dans une affectation

Lorsqu’une variable est affectée avec une expression de type différent, le ré¬sultat de l’expression est converti dans le type de la variable.

5.3.1 Exemples

i=1.3456 affectera la variable integer i avec 1. Attention :

x=2/3 affectera la variable real x avec 0.0 ! ! !

l.true. est converti en 1, et .false. en 0

Initiation au langage FORTRAN

TAB. 5.2 – Fonctions arithmétiques prédéfinies.

real        double precision             complex              Fonction

SIN         DSIN      CSIN      sin(x)

COS       DCOS    CCOS     cos(x)

TAN       DTAN                    tg(x)

ASIN      DASIN                   arcsin(x)

ACOS    DACOS                 arccos(x)

ATAN    DATAN                 arctg(x)

SINH      DSINH                  sh(x)

  • ·              ·              ·              ·              ·                              ·              ·              ·

LOG10  DLOG10                               loglo(x)

LOG       DLOG    CLOG    ln(x)

EXP        DEXP     CEXP     exp(x)

SQRT     DSQRT                  √x

5.4 Fonctions mathématiques

Une fonction FORTRAN est une boite dans laquelle rentre un ensemble de grandeurs d’un type donné(les arguments) et de laquelle sort une grandeur d’un type donné(cf 10.4).

Certaines fonctions mathématiques sont prédéfinies dans le langage (tables 5.2 et 5.3). On n’utilisera pas la même fonction selon le type de l’argument. Par exemple la fonction sinus sera SIN pour un argument réel, DSIN pour un argu¬ment double precision, CSIN pour un argument complexe.

Important :

– Le ou les arguments d’une fonction sont toujours entre parenthèses.

– Chaque fonction a son domaine de définition. Son non-respect entraîne une erreur d’exécution, c’est-à-dire que le programme s’arrête.

5.4.1 Exemples

z=(a*sin(x)+b*cos(y)) / (a*sinh(x)+b*cosh(y))

Pour définir π en double precision :

pi=4d0*datan(1d0)

5.4.2 Fonctions de conversion

Ces fonctions permettent de convertir explicitement des données d’un type en un autre type. La figure 5.1 donne les noms des des différentes fonctions permettant à partir d’un type initial d’obtenir un autre type de valeur.

Chapitre 5. Opérateurs et fonctions mathématiques

TAB. 5.3 – Fonctions diverses prédéfinies.

integer real        double

precision             complex              Fonction

MAX0

MIN0

IABS      AMAX1 AMIN1 ABS       DMAX1 DMIN1 DABS    CABS     max(x, y) min(x, y) |x| ou |z|

INT         AINT      DINT                     Partie entière

MOD     AMOD  DMOD                  Reste dans la divi- sion entière

FIG. 5.1 – Fonctions de conversion de types.

5.5 Calcul en virgule flottante

La représentation des réels en virgule flottante entraîne fatalement des erreurs2 : – de représentation lors d’une affectation

Elles viennent du fait qu’un nombre réel quelconque n’admet pas de repr´e¬sentation exacte en virgule flottante.

– d’arrondi dans les calculs.

À la suite d’une opération arithmétique, le résultat est tronqué(c’est-à-dire que des chiffres significatifs sont effacés) pour pouvoir être codés en virgule flottante.

Ces erreurs peuvent être dramatiques, dans des algorithmes sensibles aux er¬reurs. Lors d’une opération simple, l’erreur effectuée est petite, mais si l’algo¬rithme amplifie ces erreurs, le résultat peut être complètement faux.

5.5.1 Exemples

1.+1e-8 sera codécomme 1. 1d0+1d-16 sera codécomme 1d0

De nombreuses suites récurrentes exhibent les conséquences dramatiques des erreurs d’arrondi (voir TD).

Par exemple, la suite:

u0 = e − 1

un = n.un−1 − 1

Initiation au langage FORTRAN

converge mathématiquement vers 0 mais selon la machine utilisée et la précision choisie, elle pourra converger vers −∞, ∞ ou 0 ou même ne pas converger du tout!

Chapitre 6

Manipulation de textes

Les textes sont stockés dans des chaînes de caractères. Dans ce chapitre, nous donnons quelques moyens de les manipuler.

6.1 Constantes chaînes

Elles sont constituées par une série de caractères encadrés par des apostrophes (ou « simple quotes » en anglais). Exemples :

’Ceci est une chaîne’ ’/home/louisnar’

’L apostrophe doit être doublé’

6.2 Variables chaînes

Syntaxe de déclaration :

character*n var

oùn représente la longueur de la chaîne. Cette déclaration réserve n octets en mémoire pour y stocker n caractères.

Exemples :

character*15 nom

character*100 nomfichier

On peut ensuite affecter ces variables avec l’opérateur = comme pour toute autre variable :

 Chapitre 6. Manipulation de textes

nomfichier=’/usr/local/public/louisnar/th.mai’ nom=’Louisnard’

Comme la chaîne ’Louisnard’ ne contient que 9 caractères, les 6 derniers ca¬ractères de nom sont affectés avec le caractère blanc. Si on affecte une variable chaîne de 15 caractères avec une chaîne de 16 caractères, il y aura une erreur d’exécution.

6.3 Fonctions sur les chaînes

6.3.1 Longueur d’une chaîne

LEN(chaine) renvoie la longueur en mémoire de chaîne.

Attention : avec l’exemple précédent, len(nom) renvoie 15 (et pas 9!) puisque la variable nom a étédéfinie comme une chaîne de 15 caractères.

6.3.2 Recherche dans une chaîne

INDEX(chaine1, chaine2) renvoie la position de la chaine chaine2 dans la chaine chaine1.

Par exemple (toujours à partir de l’exemple précédent), index(nom,’nar’) ren¬voie 6.

6.3.3 Sous-chaînes

chaine(m :n) est la sous-chaîne allant du mième ou nième caractère de chaine. m et n peuvent être des constantes ou des variables entières.

6.3.4 Concaténation

La concaténation permet de coller deux chaînes bout à bout. En FORTRAN, cet opérateur se note //.

Par exemple :

’Bon’//’jour’

représente la chaîne suivante :

’Bonjour’

Attention (toujours avec l’exemple précédent) :

nom //’est mon nom’

Initiation au langage FORTRAN représente la chaîne suivante :

’Louisnard LJ LJ LJ LJ LJLJ est LJ mon LJ nom’

Chapitre 7

Entrées / Sorties

On appelle « Entrées / Sorties », tout ce qui permet à un programme de dialoguer avec l’extérieur :

– l’utilisateur via le clavier, l’écran, une imprimante, etc.;

– les disques via des fichiers;

– d’autres machines via le réseau;

– ...

Le langage FORTRAN permet d’écrire ou de lire des données sur différentes choses.

Pour écrire, on utilise l’instruction write :

– à l’écran ,

– sur un fichier,

– dans une chaîne de caractères.

Pour lire, on utilise l’instruction read :

– sur le clavier,

– dans un fichier.

– dans une chaîne de caractères.

On distingue les lectures/écritures :

formatées c’est à dire organisée en lignes de caractères.

C’est la cas des lectures clavier et des écritures écran, des lectures/écritures de fichiers texte et de chaînes.

non-formatées qui signifie transfert octet par octet.

C’est le cas des lectures/écritures sur fichiers binaires.

7.1 Écriture formatée

7.1.1 Syntaxe

write (unitéd’écriture, formatage) liste de données

Chapitre 7. Entrées / Sorties

– L’unitéd’écriture est un entier (voir « fichiers » 11).

Pour l’écran, on utilise *.

– Le formatage indique sous quelle forme on va écrire les données.

Il existe une formatage par défaut qui laisse FORTRAN écrire comme il veut :

le format *.

7.1.2 Exemples

write(*,*) i,j,x,y

écrit les valeurs des variables i,j,x,y sur une ligne, séparées par des blancs.

write(*,*) ’z vaut’,z

écrit la chaine « z vaut », suivie de la valeur de la variable z.

Important : se souvenir qu’une instruction write écrit une ligne puis revient à la ligne. Donc un write est égal à une ligne d’affichage.

7.2 Formats d’écriture

Un format est une série de codes, chaque code définissant le format d’écriture d’un élément d’une donnée.

7.2.1 Définition du format

Deux solutions :

– Directement dans l’instruction write avec une chaîne de caractères :

write (*,’format’) liste

– Dans une ligne labellée contenant l’instruction format :

nn format (définition du format) write (*,nn)

Cette solution permet d’utiliser le même format dans plusieurs instructions write.

 Initiation au langage FORTRAN

7.2.2 Format entier

Dans un format, la notation in permet d’afficher un entier. L’entier est écrit sur n caractères en tout :

– S’il y a besoin de plus, l’écriture échoue.

– Si cela suffit, on ajoute éventuellement des blancs à gauche.

Exemples :

i=11 j=20312

write(*,’(i6,i6)’) i,j

donne

Variante avec l’instruction format :

10           format(i6,i6)

i=11 j=20312

write(*,10) i,j

7.2.3 Format réel virgule flottante

Dans un format, la notation en.m permet d’afficher un réel en virgule flottante sur n caractères en tout avec m chiffres significatifs, c’est à dire :

f0. uuu... u | {z }

m caract.             Efuu

|             {z            }

n caract.

– S’il y a besoin de plus, l’écriture échoue.

– Si cela suffit, on ajoute éventuellement des blancs à gauche.

Pour que le format soit cohérent, il faut n > m + 7. Exemples :

x=-1456.2 y=1.6e-19

write(*,’(e14.5,e14.5)’) x,y

affiche

Chapitre 7. Entrées / Sorties

uu−0.14562E + 04

\              Y             J

14 caract.

uuu0.16000E − 18

\              V             J

14 caract.

7.2.4 Format chaîne

Dans un format, la notation an permet d’afficher une chaîne de caractères.

– Si n est spécifié, la chaine est écrite sur n caractères en tout, en ajoutant des blancs à gauche pour compléter.

– Si n n’est pas spécifié, la chaine est écrite avec son nombre de caractères total (tel que déclaré!).

On peut ajouter un $ après le a pour éviter de revenir à la ligne.

7.2.5 Exemples de formats mixtes

i=36

px=-1456.2

write(*,’(a,i4,a,e12.5)’)

& ’i vaut’, i, ’ et x vaut’, x

affichera

i vaut 36 et x vaut -0.14562E+04

7.2.6 En conclusion

Les formatages doivent être utilisés si c’est absolument nécessaire. Dans la plu¬part des cas le format par défaut (*)1 suffit largement, et il est inutile de perdre du temps a formater les sorties écran.

7.3 Lecture formatée

La lecture formatée s’applique au clavier aux fichiers texte

7.3.1 Principe

On lit une ligne de caractères d’un seul coup, la lecture étant validée par :

– la frappe de la touche RETURN pour une lecture clavier, – une fin de ligne pour une lecture de fichier texte.

Les données sur une même ligne doivent être séparées par des blancs.

Initiation au langage FORTRAN

7.3.2 Syntaxe

read (unitéde lecture, formatage) liste de variables

– L’unitéde lecture est un entier (voir « fichiers » 11). Pour le clavier, on utilise *.

– Le formatage indique sous quelle forme on va lire les données (voir write).

7.3.3 Conseil

Le plus simple est d’utiliser tout le temps le format libre *.

Exception : pour lire des variables caractères ou chaînes de caractères, le format libre ne fonctionne pas. Utiliser le format chaîne a.

7.3.4 Exemple

real a,b,c ...

read(*,*) a,b,c

attend de l’utilisateur qu’il frappe trois réels au clavier séparés par des espaces puis la touche RETURN (←~). On peut entrer les nombres en format virgule flottante. Pour entrer (1, 2) dans a, (1, 6.10−19) dans b et (32) dans c, l’utilisateur pourra taper :

1.2 1.6e-19 32

Un exemple classique d’écriture suivie d’une lecture sur la même ligne:

write(*,’(a,$)’) ’Entrez x :’ read(*,*) x

Le message sera affiché, mais le curseur ne reviendra à la ligne que lorsque l’utilisateur aura entréx suivi de RETURN.

 Chapitre 8

Contrôle de l’exécution

Un programme enchaîne les instructions qu’on lui donne une à une dans l’ordre. Pour réaliser un vrai programme, il faut tout de même disposer de moyens pour faire des tests et des boucles : on appelle cela le contrôle d’exécution.

8.1 Instructions conditionnelles 8.1.1 Objectif

Exécuter une séquence d’instructions si une condition logique est vérifiée, sinon en exécuter une autre.

8.1.2 Syntaxes

Pour exécuter une série d’instructions uniquement si une condition logique est vraie :

if (condition logique) then

...

... endif

On peut aussi spécifier une autre série d’instructions à exécuter si la condition logique est fausse :

if (condition logique) then

...

...

else

...

... endif

Chapitre 8. Contrôle de l’exécution

On peut même enchaîner plusieurs conditions logiques :

if (condition logique 1) then

...

...

else if (condition logique 2) then

...

...

else if (condition logique 3) then

...

...

else

...

... endif

Le programme exécute le bloc d’instructions suivant la première condition lo¬gique vraie puis reprend après endif. Si aucune condition logique n’est vraie, le bloc else est exécuté.

Decouvrir ces documents

  • Débuter avec le langage Fortran étape par étape

    Débuter avec le langage Fortran étape par étape

  • Débuter avec le langage Delphi étape par étape

    Débuter avec le langage Delphi étape par étape

  • Apprendre à programmer avec Ada étape par étape

    Apprendre à programmer avec Ada étape par étape

  • Débuter avec Fortran

    Débuter avec Fortran

  • Débuter avec Fortran 77

    Débuter avec Fortran 77

  • La macroeconomie formation etape par etape

    La macroeconomie formation etape par etape

  • Le langage C pas a pas livre de formation complet pour apprendre a programmer

    Le langage C pas a pas livre de formation complet pour apprendre a programmer

  • Cours complet sur l’electricite automobile etape par etape

    Cours complet sur l’electricite automobile etape par etape

Articles connexes

  • Comment faire un rétro-planning en ligne?
  • Exercice HTML: Débuter avec HTML
  • Optimisez Votre Productivité avec les Cases à Cocher Excel : Guide Pratique
  • Exercice requete SQL corrigé (Tour de France)
  • Comment faire un planning des heures de travail sur Excel?
  • Exercices sur la programmation web avec le langage PHP
  • Tutoriel Python : Notions de base
  • Tutoriel Python-Numpy : les fonctions statistiques
  • Contactez-nous
  • A propos de nous
  • On recrute
  • Rechercher dans le site
  • Politique de confidentialité
  • Droit d'auteur/Copyright
  • Conditions générales d'utilisation
  • Plan du site
  • Accueil
  • Blog
  • Finance et compta.
  • Formations Pro.
  • Logiciels & Apps
  • Organisation
  • Cours informatique
  • Aide à la rédaction
  • Etudes et Metiers
  • Science et Tech
  • Titans de la Tech
id 11354 02