Problème devoir algorithme - procédure

Résolu/Fermé
aurore973 Messages postés 7 Statut Membre -  
 mistermbodj -
Bonjour,
voilà j'ai un exercice à faire relativement simple je pense mais voilà j'aimerais comprendre tous les détails est ce que quelqu'un peut m'expliquer ? voici mon exo :
On considère la procédure AB(A,B,C)
Donnée chaïne de caractère A
Donnée Résultat chaine de caractères B
Résultat chaine de caractères C
A<--A+'NON'
B<--B+'ON'
C<--'RA'+A
Retour

Quels sont les affichages réalisés par le morceau de programme suivant :
A<--'ST' ; B<--'M' ; C<--'DA- ; AB(A,B,C) ; Afficher A,B,C ;

A<--'T' ; B<--'ST' ; C<--'CA' ; AB(C,A,B) ; Afficher A+B+C ;
Remarque l'affichage n'a pas nécessairement de signification.

Merci de votre je désire bien comprendre comment cela fonctionne.
Configuration: Windows XP
Firefox 1.5.0.11

35 réponses

  • 1
  • 2
  1. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Salut
    La somme de deux chaines de caractères signifie leur concaténation.
    Ainsi "toto"+"titi"="tototiti"
    Du coup, ton exercice :
    A<--'ST' ; B<--'M' ; C<--'DA- ; AB(A,B,C) ; Afficher A,B,C ;
    A sera égal à 'STNON'
    B sera égal à 'MON'
    C sera égal à 'RASTNON'

    A<--'T' ; B<--'ST' ; C<--'CA' ; AB(C,A,B) ; Afficher A+B+C ;
    Attention ici on appelle AB(C,A,B) du coup C vaudra A dans la procédure, etc.
    A sera égal à 'CANON'
    B sera égal à 'TON'
    C sera égal à 'RACANON'

    Si tu veux plus d'explications, n'hésite pas à me demander.
    3
    1. aurore973 Messages postés 7 Statut Membre
       
      Merci beaucoup c'est à ça que ressemblait ma solution sauf évidemment pour le deuxième morceau de programme, je ne savais pas qu'il fallait inverser A et C.
      Puis je te demander de regarder à deux autres exercices ?
      Merci à toi
      0
    2. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
       
      Il ne fallait pas inverser que le A et le C. Mais faire attention à l'ordre.
      fonction sstr(A, B)
      retourner A - B


      si A=5 B=4

      si tu appelles sstr(A,B) tu obtiens 1 et sstr(B,A) tu obtiens -1.
      Les variables dans la fonction n'ont rien à voir avec celles du code.
      Voilà pour les précisions.
      Oui, il n'y a pas de problèmes. Je t'écoute pour la suite.

      Bonne soirée
      0
    3. aurore973 Messages postés 7 Statut Membre > fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention  
       
      Recoucou,

      Je suis désolée mais je débute et c'est pas facile pour moi mais je veux tout comprendre.

      Peux tu me dire si cet exercice est bon ?

      Étant donné un tableau d’entiers T de N éléments :
      1) Écrire une procédure qui permet d’afficher le contenu de T
      2) Écrire une procédure récursive qui permet d’afficher le contenu de T (commentez votre solution)

      1) Procédure afficher T[ ]
      Lire T[ ]
      Pour I <-- 1 jusqu’à N
      Faire afficher T[ ]
      Fin pour que

      2) Procédure afficher T[ ]
      Lire T[ ]
      I <-- 1
      Tant que I <= N Faire
      I <-- I+1
      Fintq
      Afficher T [ ]

      et dernière question :

      Pour les besoins d’un dessin en noir et blanc, on veut représenter une forme composée de pixels. Pour cela la tache est dans un premier temps visualisée dans une grille comme indiquée ci-dessous. Ensuite on a décidé de coder la tache en indiquant les alternances de points blancs et de points noirs. Ainsi pour la tache prise en exemple on trouverait : (ligne1) 1 Blanc 5 Noirs 2 Blancs

      (ligne 2) 6 Noirs 2 Blancs
      (ligne 3) 6 Noirs 2 Blancs
      (ligne 4) 8 Noirs
      (ligne5) 1 Blanc 5 Noirs 2 Blancs
      (ligne6) 2 Blancs 4 Noirs 2 Blancs
      (ligne7) 2 Blancs 1 Noir 1 Blanc 1 Noir 3 Blancs
      (ligne8) 2 Blancs 1 Noir 5 Blancs

      Pour coder la tache, il suffit alors de vouloir stocker des informations du type :
      1B 5N 2B 6N 2B 6N 2B 8N 1B 5N 2B 2B 4N 2B 2B 1N 1B 1N 3B 2B 1N 5B
      (Mais également la largeur de l’image (ici 8)).
      On veut encore améliorer le codage et pour éviter de stocker les informations ‘couleurs’, on décide que toutes les lignes commenceront par des points blancs (et si le premier point est noir on indiquera qu’il y a zéro point Blanc). Ainsi en reprenant la tache de l’exemple l’alternance correspondra à :
      (1B 5N 2B) (0B 6N 2B) (0B 6N 2B) (0B 8N) (1B 5N 2B) (2B 4N 2B) (2B 1N 1B 1N 3B) (2B 1N 5B) on peut donc se contenter de représenter les nombres (sans les indications B N) et aussi la largeur 8.
      Ainsi le tableau suivant pourra représenter la tache.
      8 1 5 2 0 6 2 0 6 2 0 8 1 5 2 2 4 2 2 1 1 1 3 2 1 5 0 0
      On supposera que l’information largeur (ici 8) se trouve dans la case de N° 0.
      Nota : dans ce codage, on ajoute deux valeurs à 0 pour indiquer qu’il n’y a plus de lignes.
      On considère maintenant le tableau suivant (qui représente une tache)
      14 3 1 2 1 3 1 3 3 4 2 2 3 5 8 1 5 8 1 4 5 5 3 6 5 3 11 3 8 3 5 2 7 5 2 7 0 0

      1) dessinez la tache associée à ce codage.

      pour ça pas de problème j'ai réussi mais après je comprends plus ce que je dois faire peux tu m'expliquer ?


      2) en considérant qu’un tableau TACH contient les informations d’une tache, on veut remplir un tableau LIG avec les informations de la ligne N° I et la variable NB_ALT contenant le nombre d’éléments qui décrivent la ligne (exemple sur la tache prise en exemple en considérant I=5 on aura NB_ALT = 3 et LIG = 1 5 2 dans la représentation sous forme de grille, on suppose que le point en haut à gauche a pour coordonnées (1,1))
      a) Donner en langage naturel (en Français) un algorithme qui permet de remplir le tableau LIG (et initialiser NB_ALT)

      b) Ecrire en langage algorithmique une procédure qui permet de traduire cet algorithme.

      3) On suppose qu’une procédure REMP_LIG(…) est écrite. On veut savoir si un point de
      coordonnées (I,J) (Ligne, Colonne) appartient ou non à la tache (point en noir).
      a) Donner en langage naturel (en Français) un algorithme qui permet de savoir si le point est noir ou non

      b) Ecrire en langage algorithmique une fonction booléenne INT_TACHE qui renvoie
      VRAI si le point de coordonnées (I,J) est dans la tache et FAUX sinon.

      Merci pour tout

      A bientôt
      0
    4. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847 > fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention  
       
      Salut
      Euh, tu pourrais pas me donner ton adresse msn en privé plutôt, qu'on voit ça en direct. Trop de truc à lire lol.
      Néanmoins pour le premier exercice :

      1)
      afficher_T (T : tableau, nbElement : entier)
      debut
         pour i de 0 à nbElement faire
              ecrire T[i]
         finPour
      fin
      
      2) version récursive
      afficher_T(T : tableau, nbElement : entier)
      debut
         Si nbElement>0 faire
             ecrire T[nbElement-1]
             afficher_T(T,nbElement-1)
         finSi
      fin
      
      


      Attention dans la version récursive que je t'ai donnée, le tableau s'affiche à l'envers. Mais bon tu peux inverser facilement.
      Sinon je te donne la définition de la récursivité, puisque ta solution n'était pas récursive. Une fonction récursive est une fonction qui se rappelle elle-même, avec des arguments plus simples.

      Voilou.
      0
    5. aurore973 Messages postés 7 Statut Membre > fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention  
       
      Salut Fiddy,

      Ok merci pour les procédures mais il faudra que tu m'expliques si tu as un peu de temps à venir.

      Merci encore à toi
      0
  2. maji02
     
    jai un devoir à faire dans l'algorithme mais je trouve une diffuculté à comprendre bien cette leçon
    voila l'exercice
    proposer une variable pour stocker l'information dans le cas suivants
    l'age d'un elève
    le taux de tva
    le nom d'un ouvrier
    la situation familiale d'une personne
    dans chaque cas donner un identificateur de la variable et préciser son type
    voila l'exercice j'espère recevoir votre réponse
    2
  3. ardal
     
    Voici trois exercices simple sur la programmation(pascal) et les algorithmes :
    *facile **moyen ***difficile

    1**)On désire un programme(pascal) qui puisse résoudre des équations du second degrès tout en affichant les étapes de la résolution.

    2***)On désire un programme(pascal) qui convertisse les nombres binaires en décimals et vis-versa.

    3*)On désire un programme(pascal) qui puisse définir les nombres pairs et impairs.
    1
    1. zoya
       
      Bonjour, je voudrai b1 avoir des exo resolu sur les algorithme merci et bon courage
      0
    2. mistermbodj
       
      Le programme 3 est tres facil et tu le considère comme diffficile
      0
  4. Timon
     
    Bonjour,
    Je cherche un programme pascal faisant un tri par insertion. Je suis nul en programation pascal
    1
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. aymen
     
    Bonjour, C'est quoi le role de selon dans l'algorithme
    1
    1. coucou_hb21 Messages postés 33 Statut Membre
       
      c'est la structure algorithmique qui utilise plusieurs traitement , le sélecteur doit étre scalaire direct ( entier , caractére).
      ou bien :
      selon ... faire .... est applicable que si la variable est de type scalaire (entier , caractére) et elle n'est pas applicable pour le type reel .
      variable =
      selon variable faire
      choix1:trait1
      ........
      .......
      .........
      .......
      ..........
      ..........
      fin selon
      0
  7. à paulin
     
    Merci j'ai un petit problème ue vous pouver m'aider

    Ecrire un programme permettant d'exécuter les calculs salarials des agans d'une entreprise.Chaque agens set repeésenterpar:
    .son N°matricul, son nom , son service, sa fonction, le taux-horaire, le nombre de jours présté, le prime spécial , le salaire de base ,le salaire net à payé.Nous supposerons que le taux-horaire pour tous les agens est fixé à 6.30$ et le nombre maximal d' heures passer par jours enservice est de 8heures.Veuilllez calculer également l'envéloppe salariale qui la somme de taous le salaire net àpayé.
    1
  8. mimi
     
    ssl ede moi ua se programme pascale
    ecrire un programe qui permet de repondre aux besoins du medecin; qui contient:
    1-une procedure creation qui permet la creation de la liste;
    2-...................lecture qui permet de lire la liste des patients créée;
    3-...................insertion-Tqui permetre d'inserer un patient en tete de liste;
    4-...................insertion-Mqui inserer un patient ala position indiquee;
    5-.............................-Q qui permetre dinsere un patient en queue de liste;
    6- trois procedure suppression_M,suppression_Q;qui permettent de supprimer un patient(repectivent) en tete,au milieu et en queue de liste,
    7-une pricedure afficage qui affiche tout les patient;
    8-une procedure affchage qui permetre de copier le contenu de la liste des patients dans un fichier texte a la fin des mises a jour efectuer sur la liste;
    9-un programme principal qui fait appel a toutes les procedures precédentes;
    1
  9. fleure_emma Messages postés 3 Statut Membre 7
     
    salut
    h'ai un probleme avec cette exercice pouvez vous m'aide l'exercice dit :
    ecrire une procedure qui revoi sn(a,b)= ∑(ai_bi) /∑(ai+bi)
    merci d'avence
    1
  10. Wild-Rose
     
    Ma prof ma filer un problème mais les Boolèens je maîtrise pas trops,
    si on pouvait m'expliquer au moins

    5+2>4 ET NON VRAI OU 5-3=2
    5+2>4 ET NON (VRAI OU (5-3=8)
    0
  11. Juh
     
    je commence à étudier ça aussi c'est vrai que c'est tendu au début ;

    en tout cas il faut commencé par le NON qui est prioritaire

    le NON VRAI devient FAUX

    5-3=2 est donc VRAI

    5+2>4 est vrai aussi

    apres la aussi je coince un peu pour le ET et OU

    si toutes les valeurs sont VRAI avec un ET ça reste donc VRAI sinon avec un OU il te faudra au moins une valeur ;)

    J'espère tu saura te débrouiller avec ceux que je t'ai donner bon courage.
    0
  12. baroule
     
    Bonjour,
    je suis en bts informatique de gestion option developpeur d'application qui peut m'aider a comprendre les parametres des fonction c'est à dire comme utilsé un parametre en entre , en sortie et en entré et sortie et jai pa compris comment les valeur sont ecrasé si vous pouvez m'aider surs ces point ca me fera palsir je vous remercie d'avance
    0
  13. coucou_hb20
     
    le programme pascal est trés facile ilfaut le connaitre c'est tous ?
    si tu as besoin du tri di le moi ok
    a+
    0
  14. creepingdeath Messages postés 1 Statut Membre
     
    svp j'ai besoin d'une fonction pour langage C
    c une fonction recursive qui permet d'afficher l'image miroir d'un arbre c a direen inversant les fils de chaque noeud de l'arbre
    merci à tous
    0
  15. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Salut,

    Je ne comprends pas ta phrase. Le rôle de quoi ?
    0
  16. siciano
     
    salut
    je suis qu'un amateur en matière d'algorithme
    mais selon moi un selon permet essentiellement de faire des menus
    0
  17. SmallFitz Messages postés 358 Date d'inscription   Statut Membre Dernière intervention   189
     
    Bonjour !
    En fait un simple tableau de vérité peut aider à mieux comprendre tout ça :

    Logique VRAI FAUX:
    Note : "V" veut dire VRAI et "F" veut dire FAUX.
    Soient p et q deux assertions.
    a|b| p ou q | p et q |
    V|V| V | V |
    V|F| V | F |
    F|V| V | F |
    F|F| F | F |

    Logique binaire :
    Note : "+" veut dire OU, et le point "." veut dire ET.
    a|b| a+b | a.b |
    0|0| 0 | 0 |
    0|1| 1 | 0 |
    1|0| 1 | 0 |
    1|1| 1 | 1 |
    0
  18. amira_ota
     
    Bonjour, je veux des exercices sur les algorithme d'un ficher et d'un texte
    0
    1. coucou_hb21 Messages postés 33 Statut Membre
       
      sslt
      rejoin moi sur msn et tu vas avoir des exercices , si tu comprend turbo pascal raison de plus .
      a+
      0
  19. SmallFitz Messages postés 358 Date d'inscription   Statut Membre Dernière intervention   189
     
    Salut !
    Crée ton propre topic.
    0
  • 1
  • 2