Posted in

Exercice langage C corrigé les fonctions double

  1.  Tout l’intérêt de l’exercice réside dans la recherche de la relation entre le numéro de ligne et le nombre d’espaces et d’étoiles. Si i est le numéro de ligne, commençant à 0, et lignes le nombre de lignes, le nombre d’espaces est donné par lignes-i-1 et le nombre d’étoiles par 2*i+1
void dessine_etage(int lignes) 
{
  for (int i = 0; i < lignes; i++) 
  {
    for (int j = 0; j < lignes - i - 1; j++)
      cout << " ";
    for (int j = 0; j < i * 2 + 1; j++)
      cout << "*";
    cout << endl;
  }
}

2-Pour obtenir le même dessin que sur l’énoncé, il faut décaler les étages du sapin en ajoutant des espaces supplémentaires. Une solution consiste à légèrement modifier la fonction  dessine_etageen lui ajoutant un paramètre spécifiant le nombre d’espaces supplémentaires.

#include 

using namespace std;

void dessine_etage(int lignes, int espaces) 
{
  for (int i = 0; i < lignes; i++) {
    for (int j = 0; j < espaces + lignes - i - 1; j++)
      cout << " ";
    for (int j = 0; j < i * 2 + 1; j++)
      cout << "*";
    cout << endl;
  }
}

int main(int argc, char **argv) {
  dessine_etage(2, 2);
  dessine_etage(3, 1);
  dessine_etage(4, 0);
  dessine_etage(1, 3);

  return 0;
}

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *