Récursivité !

Résolu
wiem2007 Messages postés 83 Statut Membre -  
 brahim jel -
Bonjour,
s'il vous plait, j'ai besoin de quelques exrcices de récrusivité, j'ai un examen après demain et je n'ai pas trouvé de trucs utils, est ce que vous pouvez m'aider, ça sera formidable que j'aurai les corrigés (algorithmique, c, pascal, peu n'importe); l'essentiel de la récursivité.

9 réponses

  1. laurence
     
    Écrire une fonction récursive dans chacun des cas suivantes
    a) Qui calcul le pgcd de 2 nombres
    b) qui calcul le factoriel d'un nombre entier positif
    15
  2. wiem2007 Messages postés 83 Statut Membre 16
     
    c'est sérieux, pouriez vous m'aider ,même en me donnant des ennoncés d'exercices à part le palindrome ,le factoriel ,puissance et inverse.
    merci
    5
    1. coucou_hb21 Messages postés 33 Statut Membre
       
      ex1 :
      ecrire une fonction récursive ACKERMANN qui calcule A(a,b) selon le principe suivant :
      A(0,b) = b+1
      A(a,0) = A(a-1,1)
      A(a,b) = A(a-1, A(a,b-1))
      0
    2. coucou_hb21 Messages postés 33 Statut Membre
       
      ex2:
      ecrire une fonction récursive de recherche dichotomique d'un élément dans un tableau d'entiers de taille n ordonné par ordre croissant.


      ex3:
      ecrire une fonction récursive appelée PGCD qui calcule le PGCD de 2 entiers a et b par la méthode d'Euclide .
      exemple: PGCD(49,35) = PGCD(35,14) = PGCD(14,7) = 7


      ex4:
      écrire des fonctions récursives pour calceler la somme et le produit (factorielle) des N premiers nombres .


      ex5:
      ecrire deux fonctions qui calculent, de façon récursive, la somme et le produit de deux nombres entiers a et b positifs ou nuls.

      tu veux d'autre exercices chercher dans notre livre de bac " sciences de l'informatique" c'est une nouvelle branche mais sa peut t'aider.
      a+
      0
    3. coucou_hb21 Messages postés 33 Statut Membre
       
      dsl j'ai pas lu que tu ne veut pas le factorielle , la puissance ............

      ex6:
      ecrire une fonction récursive qui calcule le nième terme de la sute de Fibonacci suivante :
      U0 = 1
      U1 = 1
      Un+2 = Un + Un+1 , quelque soit l'entier naturel n

      ex7:
      ecrire une fonction récursive qui calcule le niéme terme de la suite u définie par :
      U0 = 0.8
      Un+1 = 0.6 Un(Un-1)

      inchallah ça va ?!!!!
      a+
      0
    4. a+ > coucou_hb21 Messages postés 33 Statut Membre
       
      merci mais comment tu trouve ses exercice? d'apres la livre scolaire?
      0
    5. amor2008
       
      On désire réaliser les tâches suivantes :
      1- Saisir un entier N ( 0 <N <20).
      2- remplir un tableau T par N entiers positifs.
      3- Inverser le tableau T.
      4- Afficher le nouveau tableau T.

      Exemple :
      Si on donne N=7 et T
      1 10 9 6 11 3 8

      Après inversion on obtient
      8 3 11 6 9 10 1

      Ecrire le programme principal et les sous programmes nécessairs pour réaliser ces tâches.
      Les algorithmes des tâches 1- et 3 doivent être récursifs et itératifs.



      program inversttrecursif;
      uses wincrt;
      type tab=array[1..20] of integer;
      var t:tab;
      n:integer;

      procedure saisir(var n:integer);
      begin
      write('taper un entier entre 1..20');readln(n);
      if (n>20) or (n<0) then saisir(n);
      end;

      procedure remplir(var a:tab;n:integer);
      var i:integer;
      begin
      readln(a[n]);
      if a[n]<0 then remplir(a,n)
      else if n>1 then remplir(a,n-1)
      end;

      procedure affiche(a:tab;n:integer);
      var i:integer;
      begin
      write(a[n]:4);
      if n>1 then affiche(a,n-1) ;
      writeln;
      end;

      procedure inverser(var t:tab;d,f:integer);
      var aux:integer;
      begin
      if d <f then
      begin
      aux:=t[d];
      t[d]:=t[f];
      t[f]:=aux;
      inverser(t,d+1,f-1);
      end;
      end;

      begin
      saisir(n);
      remplir(t,n);
      affiche(t,n);
      readln;
      inverser(t,1,n);
      affiche(t,n);
      end.



      On désire réaliser les tâches suivantes :
      1- Saisir un entier N pair ( 6 <N <20).
      2- remplir un tableau T par N entiers positifs.
      3- Permuter deux éléments consécutifs du tableau T.
      4- Afficher le nouveau tableau T.

      Exemple :
      Si on donne N=8 et T
      1 10 9 6 11 7 3 8

      Après permutation on obtient
      10 1 6 9 7 11 8 3

      Ecrire le programme principal et les sous programmes nécessairs pour réaliser ces tâches.
      Les algorithmes des tâches 1- et 3 doivent être récursifs et itératifs.


      program permut;
      uses wincrt;
      type tab=array[1..20] of integer;
      var t:tab;
      n:integer;

      procedure saisir(var n:integer);
      begin
      write('taper un entier entre 6..20 ');readln(n);
      if (n>20) or (n<6) or (n mod 2 <>0) then saisir(n);
      end;

      procedure remplir(var a:tab;n:integer);
      var i:integer;
      begin
      readln(a[n]);
      if a[n]<0 then remplir(a,n)
      else if n>1 then remplir(a,n-1)
      end;

      procedure affiche(a:tab;n:integer);
      var i:integer;
      begin
      write(a[n]:4);
      if n>1 then affiche(a,n-1) ;
      writeln;
      end;

      procedure permuter(var t:tab;d,f:integer);
      var aux:integer;
      begin
      if d <f then
      begin
      aux:=t[d];
      t[d]:=t[d+1];
      t[d+1]:=aux;
      permuter(t,d+2,f);
      end;
      end;

      begin
      saisir(n);
      remplir(t,n);
      affiche(t,n);
      readln;
      permuter(t,1,n);
      affiche(t,n);
      end.
      0
  3. roseT Messages postés 52 Statut Membre 4
     
    Bonsoir Wiem,

    je sais que ma réponse est trop en retard déjà ce sont les vacances maintenant mais je suppose que vous avez toujours besoin de quelques exercices en plus pour préparer votre BAC (je suppose) donc voilà quelque uns:

    * ecrire une fonction qui pemet de trouver la valeur la plus proche à un réel lu parmi les éléments d'un tableau

    * ecrire une fonction récursive qui permet de décomposer un entier en ses facteurs premiers.

    * ecrire une fonction récursive qui permet de vérifier si un entier est parfait ou non.

    Bonne chance
    3
  4. sousou
     
    s'il vous plait aidez moi davoir des exercices corrigés sur la récursivité
    2
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. ShaBoo Messages postés 406 Statut Membre 50
     
    Bonjour,

    tu déjà regarder ceci :
    Algo de recursivité exercice solution

    Et en poussant un peu ton regard sur la droite de ton ecran , tu verras aussi un cadre ou il est marqué "Ressources autour de ce sujet" ...

    Et en etant un peu habile de tes doigts, sache que Google est ton ami ...
    1
  7. wiem2007 Messages postés 83 Statut Membre 16
     
    merci à vous shaboo,coucou_hb21
    j'ai voulou des exercices plus difficiles, il me semble que ce type d'exercices est très classique
    1
    1. ROURO
       
      EST
      0
  8. vegveg Messages postés 39 Statut Membre 1
     
    mille merci roseT bravo super le lien encore merci
    0
  9. nawara13 Messages postés 2 Statut Membre
     
    vraiment bravo un lien tres util rose T thanks
    0
  10. h-sk saijir
     
    ecrire une fonction récursive Som_tab qui permet de calculer la Some des élements d'un tableau
    ^^
    je suis ici pour l'aide
    h-sk.sajir@hotmail.fr
    0
    1. brahim jel
       
      code en c

      int somtab (int t[],int n){
      if (n<0) retur(0);
      else return(t[n]+ somtab(t,n-1));

      }
      0
    2. brahim jel
       
      code en pasal:
      funcion somtab (t:tab ,n:integer):integer
      begin

      if (n<0) somtab:=0;
      else somtab:=t[n]+ somtab(t,n-1);

      end;
      0