Résultats de 1 à 5 sur 5

Sujet : chaine de caractères dans les procédures

  1. #1
    Membre MP
    Inscrit
    août 2013
    Messages
    2

    chaine de caractères dans les procédures

    Boujour à tous.
    J\'ai besoin d\'un peu d\'aide et je vous remercie par avance de lire mon message.
    J\'ai besoin d\'utiliser une procédure récursive avec une chaine de caractère dont la taille s\'allonge au fur et à mesure des appels. Comment faire pour déclarer la longueur de la chaîne?
    merci beaucoup et à bientôt.

  2. #2
    Membre MP
    Inscrit
    août 2013
    Messages
    38
    Le mot récursif a plusieurs sens.Merci de préciser le votre en donnant si possible un exemple pour illustrer.

    Si j\'essaye d\'interpréter:
    Il s\'agit d\'une chaîne de caractère qui s\'allonge à chaque appel de la procédure.
    Je t\'invite à lire le projet \"Bibliothèque assembleur\"
    Dans cette bibliothèque, il y a une procédure KMZZ qui pourrait répondre à ta question (à condition d\'avoir la même interprétation du problème)
    La méthode consiste à partir d\'une zone vide, d\'abscisse 1 et de longueur 0.
    La procédure \"récursive\" ajoute un texte qui est une zone lors de chaque appel. Cette zone a pour abscisse 1 et une longueur qui peut être la même ou qui évolue suivant un algorithme à définir. La procédure KMZZ accole la deuxième zone à la première en mettant à jour la longueur de la première.
    Bien entendu, au départ, il faut définir une taille maximum à atteindre pour déclarer une zone mémoire maximum.
    Ou bien, il faut mettre cette chaîne dans un fichier séquentiel. Voir dans le projet les procédures de création, de déplacement du pointeur, d\'écriture dans un fichier séquentiel sous DOS.
    Pour l\'instant le programme KMZZ est écrit en fortran et je pourrait sur demande le rajouter dans le forum du projet \"bibliothèque assembleur\".
    A suivre
    moby

  3. #3
    Membre MP
    Inscrit
    août 2013
    Messages
    2
    Excusez moi de n\'avoir pas été assez précise, j\'avoue être un peu novice en programation.

    En fait j\'ai besoin d\'une procédure qui peut s\'appeler elle-même. J\'ai lu que c\'était possible en fortran mais mon problème est que dans cette procédure je doit déclarer une chaîne de caractère à laquelle je dois concaténer le résultat de cette même procédure.

    Je ne sais pas si j\'ai été bien claire mais mes connaissances en fortran sont limitées.
    Merci par avance

  4. #4
    Membre MP
    Inscrit
    août 2013
    Localisation
    12100
    Messages
    687
    Je ne parviens pas à voir ce que pourraît être une procédure qui s\'appellerait elle même.
    En assembleur, je pourraît réaliser quelque chose dans ce sens, mais en FORTRAN je ne vois pas.
    En effet, une fonction ou un SP en FORTRAN passe des adresses en paramètre qui sont placés dans la pile.
    Si une procédure d\'appelle elle même, elle va saturer la pile avec génération d\'une rupture (exeption) par l\'OS.
    En assembleur, on a accés à la pile, donc on pourrait artificellement agir sur la pile pour controler les emboîtements successifs de la même procédure. En Fortran je ne vois pas.
    Si tu trouve la solution merci de me le faire savoir, car je suis intéressé par ce problème.
    Je vais continuer à y réfléchir....
    moby
    moby

  5. #5
    Membre MP
    Inscrit
    août 2013
    Localisation
    12100
    Messages
    687
    Aprés réflexion, je me demande si le problème posé n\'est pas plutôt l\'utilisation de programmes exécutables (en anglais process) dans un contexte multitâches (en anglais multi thread).
    Dans mon FORTRAN (Microsoft version 4.) il y a un chapitre intitulé: Creating Multithread Applications.
    J\'avoue que sa lecture me paraît un peu obscure.
    Il y a des bibliothèque de routines qui permettent à des tâches de lancer d\'autre tâches.... alors pourquoi pas elle même. Il y a des possibilités de ressources partagées et donc d\'avoir une zone mémoire commune qui pourraît contenir la chaîne à générer.
    La bibliothèque paraît contenir de nombreux sous programmes.
    Je n\'ai malheureusement pas le temps pour débrouiller ce problème. Par contre, je peux t\'envoyer le chapitre par mail, si tu me mets un mail de demande.
    Moby.
    moby

Informations du sujet

Utilisateur(s) parcourant ce sujet

il y a actuellement 1 utilisateur(s) parcourant ce sujet. (0 membre(s) et 1 visiteur(s))

Règles des messages

  • Vous ne pouvez pas créer de sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas importer de fichiers joints
  • Vous ne pouvez pas éditer vos messages
  •  
  • Les BB codes sont Activés
  • Les Smileys sont Activés
  • Le BB code [IMG] est Activé
  • Le code [VIDEO] est Activé
  • Le code HTML est Désactivé