Solution des exercices sur les structures

Exercice 1

La déclaration :

//Un joueur de basket caractérisé par son nom, sa date de naissance, sa nationalité

Type Date = structure {

j, m,a : entier ;

}

Type joueur = structure { 

nom : chaine ;

DN: Date ; //Date de naissance de type Date

Nat : chaine de caractère ;

}

//Une association de joueurs de basket (un tableau qui contient les informations des joueurs)

A [100] : joueur ; //Association c’est un tableau contient 100 joueurs maximums

i , n : entier;

//Une équipe de basket avec son nom, ses joueurs, ainsi que les points gagnés.

Type Equipe = structure

{

nom : chaine ;

T[20]: Chaine ;

Pg : entier ;

}

Eq : Equipe; //Eq c’est une variable de type Equipe

//Saisie 50 joueurs d’une association

Pour i de 1 à 50 faire

    Ecrire (“Donner le nom du joueur: “);

    Lire(A[i].nom)

    Ecrire (“Donner sa date de naissance: “);

    Lire(A[i].DN.j);

    Lire(A[i].DN.m);

    Lire(A[i].DN.a);

     Ecrire (“Donner sa nationalité: “);

     Lire(A[i].Nat);

Finpour

//Saisie les informations d’une équipe de basket composé de 12 joueurs

Ecrire (“Donner le nom de l’équipe svp: “);

Lire(Eq.nom);

Pour i de 1 à 12 faire

    Ecrire (“Donner le nom du joueur: “);

    Lire(Eq.T[i])

Finpour

Ecrire (“Donner le nombre des points gagnés: “);

Lire(Eq.Pg); 

//Afficher les joueurs de l’association dont leur nationalité est “Algérienne” et son mois de naissance “octobre”.

Pour i de 1 à 50 faire

  Si( A[i].Nat=”Algérienne” ET A[i].DN.m= 10) alors

     Ecrire (A[i].nom, “ );

     Ecrire (A[i].DN.j“ / , A[i].DN.m,”/”, A[i].DN.a);

     Ecrire (A[i].Nat)

  Finsi

Fin 

//Afficher les points gagnés par l’équipe de basket.

Ecrire (“Le nombre des points est : “,Eq.Pg);

Exercice 2 :

Déclarer la structure commune puis déclarer 100 communes

Algorithme Exo2_Commune
Type code = structure {
Num, Wl : entier ;
}

Type commune = structure

{ nom : chaine ;

Nj, Na : entier ;

CD : code ;

}

Variable

V[100] : commune ;

n,i :entier ;

//Saisie les n communes de l’Algérie avec leurs informations.

Ecrire (‘’ Donner le nombre de communes: );

LireNon;

Pour i de 1 à n faire

Lire(V[i].nom, V[i].Nj, V[i].Na);

Lire(V[i].CD.Num, V[i].CD.Wl) ;

Finpour

 

//Affiche tous les noms des communes de la wilaya de Saida

Pour i de 1 à n faire

Si (V[i].CD.WI=20) alors

Ecrire(V[i].nom);

Fsi

finpour

 

//Vérifie si Saida compte plus de personnes âgées que des jeunes

 

k0 ; // k : le nombre des jeunes de la wilaya de Saida

m0 ; //m : le nombre des personnes âgées de la wilaya de Saida

Pour i de 1 à n faire

   Si (V[i].CD.WI=20) alors

      kk+V[i]. Nj ;

      mm+V[i].Na;

   Finsi

Finpour

Si (m>k) alors

    écrire ("Saida compte plus de personnes âgées que de jeunes") ;

    Sinon

     Si (m<k) alors

        Ecrire ("Saida compte plus de jeunes que de personnes âgées") ;

       Sinon

             Ecrire (‘’Le nombre des jeunes égal le nombre des personnes agées “) ;

    Finsi

Fnisi

 

//Affiche le nom de la commune de la wilaya de Saida qui contient le plus de jeunes.

max0 ; // max: le nombre de jeunes maximal d’une commune de la wilaya de Saida

Pour i de 1 à n faire

   Si (V[i].CD.WI=20) alors

     Si (V[i]. Nj>max) alors

          Max V[i].Nj ;

          VlV[i].nom ;

       finsi

     finsi

Finpour

Ecrire("la commune", Vl, "contient le plus de jeunes");

 Fin

Modifié le: mardi 16 décembre 2025, 14:57