IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

Traduire automatiquement des algorithmes en langage Pascal


Sujet :

Algorithmes et structures de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Par défaut Traduire automatiquement des algorithmes en langage Pascal
    Salut tout le monde, je veux créer un programme permettant de
    traduire automatiquement des algorithmes en langage PASCAL.
    Est ce qu'il s'agit d'une traduction mots à mots ou bien y'a t’il d'autres stratégies pour ça ?

    Le langage que je vais utiliser pour le développement est le c #


    merci d'avance

  2. #2
    Membre très actif
    Avatar de afranck64
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 592
    Par défaut
    Je pense qu une bonne partie (70%) consiste juste en le remplacement des mots clefs, ainsi que des simboles. Il y a ensuite un peu d ajout (terminaison d expression, ...). Malheureusement j ai jamais ecris une ligne de code en C#, le cas contraire j aurais volontier participé au projejt.
    Win 10 64 bits / Linux Mint 18, - AMD A6 Quad: Py27 / Py35
    CONTENU D'UNE QUESTION
    Exemples:
    - Configuration (système d'exploitation, version de Python et des bibliothèques utilisées)
    - Code source du morceau de programme où il y a un bogue
    - Ligne de code sur laquelle le bogue apparaît
    - Erreur complète retournée pas l'interpréteur Python
    - Recherche déjà effectuée (FAQ, Tutoriels, ...)
    - Tests déjà effectués

  3. #3
    Membre Expert
    Avatar de Franck Dernoncourt
    Homme Profil pro
    PhD student in AI @ MIT
    Inscrit en
    Avril 2010
    Messages
    894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : PhD student in AI @ MIT
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2010
    Messages : 894
    Par défaut
    Comment est écrit ton algorithme ? Pseudo-code, langage naturel, etc ?

  4. #4
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    voir : http://knol.google.com/k/conversion-...-c-c-c-and-php#

    et éventuellement.
    http://delphi2csharp.sourceforge.net/
    The Convert Delphi to C# project ("delphi2csharp") converts non-visual Delphi (Object Pascal) source code units to equivalent C# code.

  5. #5
    Membre Expert
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Par défaut
    salut et merci pour la réponse.

    Citation Envoyé par Franck Dernoncourt Voir le message
    Comment est écrit ton algorithme ? Pseudo-code, langage naturel, etc ?
    l'algorithme sera "standard" ; une sorte de pseudo_code utilisé pour la résolution des problèmes informatiques par les élèves (domaine de l'enseignement)
    voici un exemple :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    0)       Début permut_aff
      1)       Répéter
               Ecrire ("introduire une valeur")
               Lire(A)
            Jusqu'à A#0
      2)   Répéter
               Ecrire ("introduire une valeur")
               Lire(B)
            Jusqu'à B#0
      3)       C --> A
            A --> B
            B --> C
      4)       Ecrire (A)
      5)       ……………………….               
      6)       Ecrire (B)
      7)       ………………………. 
      8)       Fin Permut_aff

  6. #6
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    J'avais mal compris le sujet.
    Il s'agit bien d'une cross compilation mais de Pseudo-code à Pascal (et non de Pascal à C#).

    Le principe est :
    1. faire l'analyse syntaxique du Pseudo-code afin de le traduire en une représentation interne logique (instructions, boucles, déclarations, constantes, ...),
    2. réaliser le générateur de code de cette représentation vers le langage Pascal.
    L'étape 1 représente 80% de l'effort.

  7. #7
    Membre Expert
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Par défaut
    Citation Envoyé par Graffito Voir le message

    Le principe est :
    1. faire l'analyse syntaxique du Pseudo-code afin de le traduire en une représentation interne logique (instructions, boucles, déclarations, constantes, ...),
    2. réaliser le générateur de code de cette représentation vers le langage Pascal.

    L'étape 1 représente 80% de l'effort.
    pouvais vous me donner des liens/documentations/algorithmes sur l'analyse syntaxique.

  8. #8
    Membre très actif
    Avatar de afranck64
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 592
    Par défaut
    Voici ce que je vous propose comme syntaxe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    programme permutation
    inclure dos, user, crt
     
    variables
       entier a, b, c
       reel x, y, z
     
    constantes
       entier ca = 2
       entier cb = 3
     
    fonction test(entier a, reel z; sortie c, y) booleen
    variables
       entier va, vb
    Debut
       va <- 1
       vb <- va + 23
       si (vb < a) alors
           vb <- vb - 6
       sinon si (vb == z) alors
           vb <- vb * 2
       finsi
       retourner vb * a * z
     
     
     
    procedure permut_aff()
    Debut
       Repeter
          Ecrire ("introduire une valeur")
          Lire(A)
       Jusqu'a A!=0
       Repeter
          Ecrire ("introduire une valeur")
          Lire(B)
       Jusqu'a B!=0
       C <- A
       A <- B
       B <- C
       Ecrire (A)
       ………………………             
       Ecrire (B)
       ………………………. 
       Fin Permut_aff
    Fin
    Win 10 64 bits / Linux Mint 18, - AMD A6 Quad: Py27 / Py35
    CONTENU D'UNE QUESTION
    Exemples:
    - Configuration (système d'exploitation, version de Python et des bibliothèques utilisées)
    - Code source du morceau de programme où il y a un bogue
    - Ligne de code sur laquelle le bogue apparaît
    - Erreur complète retournée pas l'interpréteur Python
    - Recherche déjà effectuée (FAQ, Tutoriels, ...)
    - Tests déjà effectués

Discussions similaires

  1. Réponses: 1
    Dernier message: 01/11/2013, 16h50
  2. Formalisation graphique des algorithmes
    Par David R. dans le forum Algorithmes et structures de données
    Réponses: 14
    Dernier message: 08/12/2012, 10h21
  3. [BCB5] Défilement automatique des scroll bars
    Par Christophe Brun dans le forum C++Builder
    Réponses: 2
    Dernier message: 05/12/2004, 16h59
  4. Traitement automatique des mails.
    Par ourk dans le forum Linux
    Réponses: 2
    Dernier message: 23/09/2004, 18h14
  5. [TP] Gestion des bus PCI en pascal
    Par prodexys dans le forum Turbo Pascal
    Réponses: 12
    Dernier message: 18/04/2003, 22h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo