Projet mkd/tri.c
De Wiki EELL.
(Différences entre les versions)
JPL (discuter | contributions) m (Mise à jour) |
JPL (discuter | contributions) m (Mise à jour) |
||
| Ligne 660 : | Ligne 660 : | ||
{{Boîte déroulante/fin}} | {{Boîte déroulante/fin}} | ||
| - | == | + | == Fichiers sources des tests == |
| - | + | ; La fonction tri() a été éprouvée avec les options de compilation suivantes: | |
| - | + | ||
| - | + | ||
| + | 1 - Commande : <code> mkd \? | grep '-l' > ligne.txt</code> | ||
| + | |||
| + | <span style="color:blue">'''Fichier ligne.txt''', compilation avec CD1= '%', CD2= '<', CD3= '!' :</span> | ||
| + | : <span style="color:orange">Ligne: -l et -p: ligne; (compil.: % ou < en première colonne ou ! dans la ligne)</span> | ||
| + | |||
| + | 2 - Commande : <code> mkd \? | grep page > block.txt</code> | ||
| + | |||
| + | <span style="color:blue">'''Fichier block.txt''', compilation avec CD4= '\"', CD5= '\"' :</span> | ||
| + | : <span style="color:orange">page: (compil.: commence avec " et se termine avec ")</span> | ||
| + | |||
| + | {{Boîte déroulante/début|titre=degrad.f90, sample2.ps, strings.txt, tags.html ; Updated 2013-05-11}} | ||
| + | * degrad.f (Fortran 90&+) | ||
| + | <pre style="color:orange"> | ||
| + | PROGRAM DEGRAD !S Début de programme | ||
| + | ! | ||
| + | !S Imprime une table de conversion degrés -> radians | ||
| + | !S ================================================= | ||
| + | ! | ||
| + | !S Déclaration des variables | ||
| + | INTEGER DEG | ||
| + | REAL RAD, COEFF | ||
| + | ! | ||
| + | !S En-tête de programme | ||
| + | WRITE ( *, 10) | ||
| + | 10 FORMAT (' ',20('*') / & | ||
| + | & ' * Degres * Radians *' / & | ||
| + | & ' ', 20('*') ) | ||
| + | ! | ||
| + | !S Corps de programme | ||
| + | COEFF = (2.0 * 3.1416) / 360.0 | ||
| + | DO DEG = 0, 90 | ||
| + | RAD = DEG * COEFF | ||
| + | WRITE ( *, 20) DEG, RAD | ||
| + | 20 FORMAT (' * ',I4,' * ',F7.5,' *') | ||
| + | END DO | ||
| + | ! | ||
| + | !S Fin du tableau | ||
| + | WRITE ( *, 30) | ||
| + | 30 FORMAT (' ',20('*') ) | ||
| + | ! | ||
| + | !S Fin de programme | ||
| + | STOP | ||
| + | END PROGRAM DEGRAD | ||
| + | CS Fin | ||
| + | !S Fin | ||
</pre> | </pre> | ||
| - | |||
| - | |||
| + | * sample2.ps (PostScript) | ||
| + | <pre style="color:red"> | ||
| + | %O Cursor initialization % | ||
| + | 200 200 moveto | ||
| + | %O Drawing the rectangle % | ||
| + | 400 300 lineto | ||
| + | 300 300 lineto | ||
| + | 200 200 lineto | ||
| + | stroke | ||
| + | </pre> | ||
| + | |||
| + | * strings.txt | ||
| + | <pre style="color:blue"> | ||
| + | Fichier strings.txt "" | ||
| + | "chaîne 1" | ||
| + | "chaîne 2 précédée de 1 tab" | ||
| + | "* chaîne 2 précédée de 5 espaces" | ||
| + | </pre> | ||
| + | |||
| + | * tags.html | ||
| + | <pre style="color:violet"> | ||
| + | <!Doctype html public "-//w3c//dtd html 4.0 Transitional//en"> | ||
| + | <HTML> | ||
| + | <HEAD> | ||
| + | <META HTTP-EQUIV="CONTENT-TYPE" CONTENT="text/html; charset=UTF-8" /> | ||
| + | <TITLE>Exercices avec mkd</TITLE> | ||
| + | </HEAD> | ||
| + | <BODY> | ||
| + | <i>Exercices avec la commande mkd.</i> | ||
| + | <p> | ||
| + | <b><u>Fonction cpp_(); Fichier cpp.c</u></b> | ||
| + | <br> | ||
| + | <b>Documentation simplifiée.</b> | ||
| + | <br> | ||
| + | La fonction doit décoder des commentaires, pré-codés avec un caractère ASCII qui suit le début de commentaire. | ||
| + | <br> | ||
| + | Exemple: //A ou /*A | ||
| + | <br> | ||
| + | ... et bla bla bla ...(raccourci pour les exercices) | ||
| + | </p> | ||
| + | |||
| + | <p> | ||
| + | <b>Tests unitaires:</b> | ||
| + | <br> | ||
| + | Vérifiez les options n, s et t séparément: | ||
| + | <br> | ||
| + | Vérifiez que la numérotation des lignes est correcte dans tous les cas de décodage (lignes et blocs). n, ns. nt, nst. | ||
| + | <br> | ||
| + | Vérifiez que le texte reste à la bonne place dans tous les cas de décodage: toute la ligne (dans la cas de la directive de compilation FULL_LINE), ou texte seul. | ||
| + | <br> | ||
| + | -- Vérifiez que les tabulations sont bien prises en charge dans tous les cas, décodage des lignes et des blocs. | ||
| + | <br> | ||
| + | -- Vérifiez de même pour les espaces. | ||
| + | <br> | ||
| + | La fonction doit être éprouvée de telle sorte qu'un commentaire qui se termine par le caractère de fin de fichier soit entièrement copié dans le fichier cible. | ||
| + | <br> | ||
| + | La fonction cpp_() doit être éprouvée de telle sorte qu'un commentaire qui se termine par le caractère de fin de fichier soit entièrement copié dans le fichier cible. | ||
| + | <br> | ||
| + | Le caractère de fin de fichier décodé avant le(les) caractère(s) de fin de commentaire doit être remplacé par un caractère de fin de ligne. | ||
| + | <br> | ||
| + | <br> | ||
| + | Le caractère de fin de fichier <b>(EOF) ne doit jamais apparaître dans le texte du fichier cible</b>. | ||
| + | <br> | ||
| + | <i>Ceci provoquait un bug dans la version Alpha de l'application fenêtrée mkdcppw; à l'étape du test d'intégration.</i> | ||
| + | </p> | ||
| + | <p> | ||
| + | %! introduction d'une balise d'extraction ligne % compatible en 1ère colonne | ||
| + | <br> | ||
| + | introduction d'une balise d'exttraction ligne !! dans la ligne (inline) | ||
| + | </p> | ||
| + | <h2>Exemples de tags:</h2> | ||
| + | <header>header</header><br> | ||
| + | <abbr>abréviation</abbr><br> | ||
| + | <acronym>acronyme</acronym><br> | ||
| + | <cite>citation</cite><br> | ||
| + | <code>code</code><br> | ||
| + | <dfn>Définition de terme</dfn><br> | ||
| + | <del>supprimé</del><br> | ||
| + | <ins>inséré</ins><br> | ||
| + | <kbd>clavier</kbd><br> | ||
| + | <samp>échantillon</samp><br> | ||
| + | <var>variable</var><br> | ||
| + | <!-- commentaire --><br> | ||
| + | <footer>footer</footer><br> | ||
| + | </BODY> | ||
| + | </HTML> | ||
</pre> | </pre> | ||
{{Boîte déroulante/fin}} | {{Boîte déroulante/fin}} | ||
[[Catégorie:Générateurs de documentation]] | [[Catégorie:Générateurs de documentation]] | ||
Version du 11 mai 2013 à 13:36
Retour aux fichiers en développement →
Sommaire[masquer] |
Fichiers de la fonction tri()
Remarks: (1991)
Cette fonction de mkdoc permet le tri des commentaires en fonction des para-
mètres CD1 CD2 CD3 CD4 CD5 compiles.
avec l'option l (copie de ligne):
CD1 et CD2 sont des caractères début de commentaires a placer en début de
ligne comme en FORTRAN: c ou C ou * .
CD3 est un caractère début de commentaire que l'on peut placer en tout point
d'une ligne comme ; en assembleur, # en shell ou % en PostScript.
Cette fonction permet des tris différents de SHELL_.C vu qu'elle ignore si
# est dans une chaîne ou si elle est précédée du char \ .
avec l'option p (copie de page ):
CD4 est le caractère de début du commentaire et CD5 est la fin du commentaire
comme en PASCAL : CD4={ et CD5=} . CD4=CD5=" peut a la rigueur permettre
d'extraire des chaînes de caractères afin d’éditer un dictionnaire syntaxique
toutefois " étant a la fois début et fin de caractère le résultat n'est pas
assuré.
Fichier de commande des tests
Analyse des test Konsole
Fichiers sources des tests
- La fonction tri() a été éprouvée avec les options de compilation suivantes
1 - Commande : mkd \? | grep '-l' > ligne.txt
Fichier ligne.txt, compilation avec CD1= '%', CD2= '<', CD3= '!' :
- Ligne: -l et -p: ligne; (compil.: % ou < en première colonne ou ! dans la ligne)
2 - Commande : mkd \? | grep page > block.txt
Fichier block.txt, compilation avec CD4= '\"', CD5= '\"' :
- page: (compil.: commence avec " et se termine avec ")

