Vous êtes sur la page 1sur 24

Institut National des Télécommunications et des Technologies de l’Information et de la Communication d’Oran

INTERROGATION IGE36 NOM & PRENOMS


Algorithmique et structures de données …………………………………………..…
Durée 1h20 …………………………………………..…
Exercice 1 12 points SECTION …...… GROUPE :……..
20
1. Soit le QCM suivant (cochez la ou les bonnes réponses):
1) Quelle est la différence entre une variable et une
constante ?
 Il n’ y ‘a aucune différence entre une variable et 11) Comment appelle-t-on le fait d’annoncer dans un
une constante programme ou un algorithme que l’on va utiliser une
variable avec un nom et un type précis de données ?
 La variable ne change jamais de valeur par contre
la constante change toujours.
 La déclaration
 La variable contient une valeur qui peut varier  L'initialisation
durant le déroulement de l’algorithme et la  L'intégration
constante contient une valeur qui ne varie pas.  La création
2) Quelle affirmation concernant les variables est juste ? 12) Que signifie la syntaxe new dans l’utilisation des
 Elle doit toujours commencer par un chiffre. variables structurées?
 Elle ne doit pas contenir les signes suivants : @, $,  La déclaration
&, #...  La création
 Elle doit toujours avoir TOTO comme nom.  L’initialisation et le remplissage
3) Laquelle des instructions suivantes est juste ? 13) Les quelles de ces affirmations est correctes ?
 lire (a, b, c ) ;  Fonction est dite récursive si elle s’appelle elle-
 lire (‘’ votre nom :’’ , nom ) ; même.
 lire ( ‘‘INSTITUT DE TELECOM D’ORAN ‘’ ) ;  Une fonction est récursive terminale si elle
4) Quelle est la valeur de Y après l'instruction suivante : retourne avec un calcul la valeur par son appel.
Y  17 / 5 + 17 div 5 + 17 mod 5 ;
 Une fonction récursive contient au moins une
condition d’arrêt des appels récursifs.
Y=8  Y = 9.4  Y = 8.4 14) Quelle affirmation concernant les fonctions est juste ?
5) Un algorithme permet :  Il faut toujours donner une valeur de retour
 De mieux comprendre le fonctionnement des  La valeur de retour est unique
logiciels.  Il faut toujours passer au moins un paramètre
 Par une suite finie d’instructions de résoudre un  Il n y a pas d’autres mécanismes pour retourner
problème. plusieurs valeurs.
 De définir l’architecture d’un ordinateur. 15) Qu'appelle-t-on un type scalaire par énumération?
6) Quelle est l'instruction erronée ?  C’est un Type définis par le programmeur (qui
 b+c 10 ;  β 4; 5X; n’existe pas dans votre langage).
7) Un algorithme peut être de différentes structures :  C’est un Type prédéfini propre à l’utilisation des
 Automatique. enregistrements.
 Conditionnelle.  C’est un Type utilisé sans opérations arithmétiques
 Électronique. permises.
 Itérative. 16) Qu'appelle-t-on un enregistrement?
 Électrique.  C’est une structure hétérogène d’une variable
8) Que permet de faire une boucle ? structurée.
 Attribuer une valeur à une variable.  C’est une structure homogène d’une variable
 Améliorer la vitesse d'exécution d'un programme scalaire déterminée.
mais augmente le risque d’erreurs.
 C’est une structure de sauvegarde de fichier.
 Initialiser les constantes.
17) Quelle sont les objets à utiliser pour représenter un
 Répéter certaines actions plusieurs fois.
schéma mémoire ? :
9) Quel est l'intérêt de créer une variable?
 Le nom de l’algorithme
 Réduire le risque d'erreurs.
 Garder des informations en mémoire.  La partie des variables
 Permettre de rendre les actions aléatoires.  La partie des constantes
 Une fois crée elle peut être modifiée à tout  La partie des instances
moment. 18) Parmi les affirmations suivantes, laquelle est juste ?
10) Peut-on insérer une boucle dans une autre boucle ?  Une procédure peut avoir des variables locales.
 Oui.  Une procédure peut être paramétrée.
 Non
 Une procédure ne peut pas appeler une autre
procédure.

1/2
Institut National des Télécommunications et des Technologies de l’Information et de la Communication d’Oran

2. Répondez aux questions suivantes :


1) Quelle est la différence entre la boucle tant-que-faire et la boucle faire-tant-que ?
……………………………………………………………………………………………………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………………………………………………………………………………………………..

2) Quel type renvoyé par l’évaluation d’une condition ?


……………………………………………………………………………………………………………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………………………………………………………………………………………………………..
3) Quel sera la valeur affichée après l’exécution de ce bloc d’instructions ? X4 ;
………………………………………………………………………………………………………… Tant que (X<=5) faire
………………………………………………………………………………………………………… { XX mod 2 ; }
Ecrire (X) ;
4) Qu’est-ce que la recherche dichotomique, dans quel cas peut-elle s’appliquer ? Expliquez son principe.
………………………………………………………………………………………………………………………………………………………………………………………………………………
………………………………………………………………………………………………………………………………………………………………………………………………………………
………..………………………………………………………………………………………………………………………………………………………………………………………………

Exercice 2: 5 points
Ecrire une fonction (avec l’algorithme appelant) qui calcule et retourne le plus grand écart dans un tableau passé en paramètre (l'écart
est la valeur absolue de la différence de deux éléments).

Exercice 3 3 points
Vous désirez comparez deux offres d’abonnement téléphonique. La facture est calculée avec un fixe (somme à payer obligatoirement
tous les mois) et une partie proportionnelle au temps passé à téléphoner (indiqué en minutes).

Ecrire l’algorithme qui indique l’opérateur le plus Offre Fixe Prix à la minute
intéréssant après avoir saisi la consommation Telecom 1 10 euros 0.50 euros
moyenne mensuelle (en minutes). Telecom 2 15 euros 0.42 euros

Remarque :
Répondez directement sur le sujet
Happy New Year
R. TLEMSANI
2/2
Institut National des Télécommunications et des Technologies de l’Information et de la Communication d’Oran

Corrigé INTERROGATION IGE36 NOM & PRENOMS


Algorithmique et structures de données …………………………………………..…
Durée 1h20 …………………………………………..…
Exercice 1 12 points SECTION …...… GROUPE :……..
20
1. Soit le QCM suivant (cochez la ou les bonnes réponses):
1) Quelle est la différence entre une variable et une
constante ?
 Il n’ y ‘a aucune différence entre une variable et 11) Comment appelle-t-on le fait d’annoncer dans un
une constante programme ou un algorithme que l’on va utiliser une
½ variable avec un nom et un type précis de données ?
 La variable ne change jamais de valeur par contre
point la constante change toujours.
 La déclaration
QCM  La variable contient une valeur qui peut varier  L'initialisation
durant le déroulement de l’algorithme et la  L'intégration
constante contient une valeur qui ne varie pas.  La création
2) Quelle affirmation concernant les variables est juste ? 12) Que signifie la syntaxe new dans l’utilisation des
 Elle doit toujours commencer par un chiffre. variables structurées?
 Elle ne doit pas contenir les signes suivants : @, $,  La déclaration
&, #...  La création
 Elle doit toujours avoir TOTO comme nom.  L’initialisation et le remplissage
3) Laquelle des instructions suivantes est juste ? 13) Les quelles de ces affirmations est correctes ?
 lire (a, b, c ) ;  Fonction est dite récursive si elle s’appelle elle-
 lire (‘’ votre nom :’’ , nom ) ; même.
 lire ( ‘‘INSTITUT DE TELECOM D’ORAN ‘’ ) ;  Une fonction est récursive terminale si elle
4) Quelle est la valeur de Y après l'instruction suivante : retourne avec un calcul la valeur par son appel.
Y  17 / 5 + 17 div 5 + 17 mod 5 ;
 Une fonction récursive contient au moins une
condition d’arrêt des appels récursifs.
Y=8  Y = 9.4  Y = 8.4 14) Quelle affirmation concernant les fonctions est juste ?
5) Un algorithme permet :  Il faut toujours donner une valeur de retour
 De mieux comprendre le fonctionnement des  La valeur de retour est unique
logiciels.  Il faut toujours passer au moins un paramètre
 Par une suite finie d’instructions de résoudre un  Il n y a pas d’autres mécanismes pour retourner
problème. plusieurs valeurs.
 De définir l’architecture d’un ordinateur. 15) Qu'appelle-t-on un type scalaire par énumération?
6) Quelle est l'instruction erronée ?  C’est un Type définis par le programmeur (qui
• b+c 10 ; • β 4; •5X; n’existe pas dans votre langage).
7) Un algorithme peut être de différentes structures :  C’est un Type prédéfini propre à l’utilisation des
 Automatique. enregistrements.
 Conditionnelle.  C’est un Type utilisé sans opérations arithmétiques
 Électronique. permises.
 Itérative. 16) Qu'appelle-t-on un enregistrement?
 Électrique.  C’est une structure hétérogène d’une variable
8) Que permet de faire une boucle ? structurée.
 Attribuer une valeur à une variable.  C’est une structure homogène d’une variable
 Améliorer la vitesse d'exécution d'un programme scalaire déterminée.
mais augmente le risque d’erreurs.  C’est une structure de sauvegarde de fichier.
 Initialiser les constantes. 17) Quelle sont les objets à utiliser pour représenter un
 Répéter certaines actions plusieurs fois. schéma mémoire ? :
9) Quel est l'intérêt de créer une variable?  Le nom de l’algorithme
 Réduire le risque d'erreurs.  La partie des variables
 Garder des informations en mémoire.  La partie des constantes
 Permettre de rendre les actions aléatoires.  La partie des instances
 Une fois crée elle peut être modifiée à tout 18) Parmi les affirmations suivantes, laquelle est juste ?
moment.  Une procédure peut avoir des variables locales.
10) Peut-on insérer une boucle dans une autre boucle ?  Une procédure peut être paramétrée.
 Oui.  Une procédure ne peut pas appeler une autre
 Non procédure.

1/2
Institut National des Télécommunications et des Technologies de l’Information et de la Communication d’Oran

2. Répondez aux questions suivantes :


1) Quelle est la différence entre la boucle tant-que-faire et la boucle faire-tant-que ?
tant-que-faire : minimum de passage 0, la condition est vérifiée au début avant son bloc de traitement.
½ Pt
faire-tant-que : minimum de passage 1, la condition est vérifiée à la fin après son bloc de traitement.
2) Quel type renvoyé par l’évaluation d’une condition ?
Booléen ou logique X4 ; ½ Pt
3) Quel sera la valeur affichée après l’exécution de ce bloc d’instructions ? Tant que (X<=5) faire
N’affiche Rien  Boucle infinie ( X atteindra 0 dans la 3
ième
itération { XX mod 2 ; }
1 Pt
Et vérifia toujours la condition) Ecrire (X) ;

4) Qu’est-ce que la recherche dichotomique, dans quel cas peut-elle s’appliquer ? Expliquez son principe.
La dichotomie consiste à subdiviser et traiter des données ou un problème en deux parties plus petites de moitié.
La recherche dichotomique consiste à partir d’un tableau déjà trié : Séparer le tableau en deux par un indice milieu (entre des indices
1 pt
gauche et droite) ; Comparer la valeur recherchée et la valeur située au milieu du sous-tableau ; Continuer la recherche dans un seul
des deux sous-tableaux.
Exercice 2: 5 points
Ecrire une fonction (avec l’algorithme appelant) qui calcule et retourne le plus grand écart dans un tableau passé en paramètre (l'écart
est la valeur absolue de la différence de deux éléments).

Algorithme Exo2Interro Fonction GrandEcart(T : tableau d’entier, nT: entier) : entier


Var : A : tableau * + d’entiers ; ½ pt VAR: min, max, i: entiers 1pt
D : entier Debut
Debut min = T[1] ;
Ecrire(« donner la dimension de votre tableau ») ; Lire(D) ; max =T[1] ;
A new entier[D] ; ½ pt Pour i de 2 à nT Faire {
Pour i de 1 à T Si T[i] > max Alors max = T[i] ;
1p
Lire(A[i]) ; ½ pt Si T[i] < min Alors min = T[i] ;
t
Ecrire (« Le plus grand écart dans votre tableau est », }
GrandEcart(A,D)) ; Retourner (max – min) ; ½ pt ½ pt
½ pt
Fin OPTIMISATION
Fin

Exercice 3 3 points
Vous désirez comparez deux offres d’abonnement téléphonique. La facture est calculée avec un fixe (somme à payer obligatoirement
tous les mois) et une partie proportionnelle au temps passé à téléphoner (indiqué en minutes).

Ecrire l’algorithme qui indique l’opérateur le plus Offre Fixe Prix à la minute
intéréssant après avoir saisi la consommation Telecom 1 10 euros 0.50 euros
moyenne mensuelle (en minutes). Telecom 2 15 euros 0.42 euros

Algorithme MeilleurOffre
Var : nombreMinute : entier ; ½ pt
tarif1, tarif2 : réel ;
Début
Lire(nombreMinute) ;
tarif1 10 + 0.5 * nombreMinute ;
1pt
tarif2 15 + 0.42 * nombreMinute ; ½ pt
Si (tarif1<tarif2) alors OPTIMISATION
½ pt Ecrire(« choisir Telecom1 ») ;
Sinon ½ pt
Ecrire(« choisir Telecom2 ») ;
Fin

Remarque :
Répondez directement sur le sujet 2/2
Happy New Year
R. TLEMSANI
Institut National des Télécommunications et des Technologies de l’Information et de la Communication d’Oran

EXAMEN IGE36
Algorithmique et structures de données
Durée 1h30

Exercice 1 8 points
Ecrire les trois fonctions permettant de:
1. calculer du nombre d'occurrences d'un élément donné dans un tableau.
2. tester si le même tableau est trié ou pas.
3. tester si les éléments du même tableau sont tous consécutifs ou non.

Exercice 2 3 points
1. Quelle est la différence entre une structure de données statique et une structure de données dynamique ?
2. Pour un magasin en ligne, on souhaite pouvoir afficher la liste des articles présents au catalogue par ordre de prix
croissants. Définir, un type Article permettant de modéliser des articles d’un catalogue avec comme attributs, une
référence alphanumérique (comme un nom par exemple), et un prix en euros.
3. Définir, en langage algorithmique, une fonction permettant de vérifier si trois nombres entiers (a, b, c) forment un
triplé de Pythagore, c’est-à-dire si a2 + b2 = c2.

Exercice 3 4.5 points


Ecrire un algorithme qui demande à l’user un nombre et affiche:
 Les diviseurs de ce nombre
 Le nombre de ces diviseurs
 La somme des diviseurs de ce nombre

Exercice 4 4 points
Ecrire un algorithme qui demande à l’user les données suivants
PHTU, Nombre d’article et TVA
Et calculer le PTTC selon la règle suivante tel que :
 Remise = 10% si nombre d’article>10
 Remise = 0.75% si 5<nombre d’article<=10
 Remise = 0.50% si nombre d’article<=5

Remarque : 0.5 point est laissé pour la propreté de la copie

‫حظ موفق للجميع‬

1/1
Institut National des Télécommunications et des Technologies de l’Information et de la Communication d’Oran

EXAMEN IGE36
Algorithmique et structures de données
Durée 1h30

Exercice 1 8 points
Ecrire les trois fonctions permettant de:
1. calculer du nombre d'occurrences d'un élément donné dans un tableau.
Fonction Nb_occurences (T: Tableau d'entier, N: entier, X :entier) : entier
VAR i,nb_occ : entiers
Debut
nb_occ  0
Pour i 1 a N Faire
Si T[i] = X Alors nb_occ  nb_occ + 1
Fsi
Fpour
retourner (nb_occ)
Fin

2. tester si le même tableau est trié ou pas.


Fonction Est_trie (T: Tableau d'entiers, N: entier): booléen
VAR i: entiers
est_trie: Booléen
Debut
i1
Tant que i < N ET T[i] <= T[i+1] Faire
ii+1
Ftque
est_trie  (i = N)
retourner (est_trie) ;
Fin

3. tester si les éléments du même tableau sont tous consécutifs ou non.


Fonction TestConsecutivite(T: Tableau d'entiers, N: entier): booléen
Var i en Entier
test en Booleen
Début
test ← vrai
i ← 1 ‘ commence à 1 car je teste avec la case précédente.
Si (N>1) alors
Tant que (test = vrai) faire
Si (tab(i) <> tab(i-1)+1) alors
test ← faux
Fsi
i←i+1
si (i>= N) alors
test ← faux
fin si
Fin Tant que
Fsi
Retourner( test) ;
Fin

1/1
Institut National des Télécommunications et des Technologies de l’Information et de la Communication d’Oran

Exercice 2 3 points
1. Quelle est la différence entre une structure de données statique et une structure de données dynamique ?
La différence entre une structure de données statique et une structure de données dynamique est la taille, la première est
définie au début en spécifiant la taille qui est fixe, par contre pour la deuxième la taille est variable et qui est basée sur
l’allocation dynamique.
2. Pour un magasin en ligne, on souhaite pouvoir afficher la liste des articles présents au catalogue par ordre de prix
croissants. Définir, un type Article permettant de modéliser des articles d’un catalogue avec comme attributs, une
référence alphanumérique (comme un nom par exemple), et un prix en euros.
Type Article = ENREGISTREMENT
Référence : chaîne de caractères
Prix : réel
FIN
3. Définir, en langage algorithmique, une fonction permettant de vérifier si trois nombres entiers (a, b, c) forment un
2 2 2
triplé de Pythagore, c’est-à-dire si a + b = c .
Fonction Pythagore (a : entier, b : entier, c : entier) : booléen
Debut Retourner a × a + b × b = c × c Fin

Exercice 3 4.5 points


Ecrire un algorithme qui demande à l’user un nombre et affiche:
 Les diviseurs de ce nombre
 Le nombre de ces diviseurs
 La somme des diviseurs de ce nombre
Algo nbr_premier
Variable compt, s, i, N : entier
Debut Ecrire (« entrer N »)
Lire (N)
Compt 0
S0
Pour i de 2à N-1 faire
Si N mod i = 0 alors
Ecrire (i)
Compt  compt+1
S s+i
Finsi
Fin pour
Ecrire (« la somme est : », s)
Ecrire (« le nombre des diviseurs est : » , compt)
Fin
Algo prixTTC
Exercice 4 4 points
Variables PHTU, PTTC : réel
Ecrire un algorithme qui demande à l’user les données suivants Nbr : entier
PHTU, Nombre d’article et TVA Début
Et calculer le PTTC selon la règle suivante tel que : Ecrire (« entrer le PHTU : » )
Lire (PHTU)
 Remise = 10% si nombre d’article>10 Ecrire (« le nombre d’article : » )
 Remise = 0.75% si 5<nombre d’article<=10 Lire (nbr)
 Remise = 0.50% si nombre d’article<=5 Ecrire (« entrer TVA : » )
Lire (TVA)
Si nbr>10 alors
PTTC  PHTU*nbr*(1+TVA-0.01)
Remarque : 0.5 point est laissé pour la propreté de la copie Sinon
Si nbr<=5 alors
PTTC  PHTU*nbr*(1+TVA-
0.005)
Sinon
PTTC  PHTU*nbr*(1+TVA-
0.0075)
Finsi
Finsi 2/1
Ecrire (« le PTTC est : «, PTTC)
Fin
Algorithmique et structures de données

INTTEROGATION ECRITE IGE38


Questions de cours : 5.5 points
1. Dans quel cas vaut-il mieux utiliser une boucle faire-tantque plutôt qu’une autre boucle ? Expliquez.
Réponse :
Lorsqu’on doit obligatoirement faire l’instruction de la boucle avant le test, c’est-à-dire lorsque la condition de
sortie utilise des valeurs qui sont initialisées dans la boucle.
2. Donnez la signature de la fonction majuscule qui retourne le nombre de majuscules dans une chaine de caractères
de taille quelconque.
Réponse :
Fonction majuscule (ch : chaine de caractères, taille : entier) : entier ;
Déclarer le type d’enregistrement personne défini par un nom, un prénom et un âge.
Réponse :
Type personne = ENREGISTREMENT
{ Nom : chaine de caractère ;
Prénom : chaine de caractère ;
age : entier ;
}
3. Soit la fonction :
Fonction FONCT(x : réel, n : entier)
DEBUT
si (n = 0) alors
retourner (1.0);
sinon
retourner (x * x * FONCT(x, n-2));
FIN
Qu’affiche l’instruction suivante ?
Ecrire("fonction de ", 2.0, 5, FONCT(2.0,5));
Réponse :
L’exécution ne va pas se terminer. En effet, la condition de récurrence ne converge pas vers le cas d’arrêt lorsque
n est impair
4. Quelle structure de contrôle utilisons-nous lorsque la condition de test est une variable qui change de valeur dans
un ensemble fini ?donnez un exemple !
Réponse :
SELON CAS (SWICH)
Var lang :chaine de caractères
Lire(lang) ;
Selon lang
{
Cas (« ar ») : écrire (« arabe ») ;
Cas (« fr ») : écrire (« français») ;
Cas (« eng ») : écrire (« anglais ») ;
Par défaut : écrire (« autre langue ») ;
}
5. Quels sont les éléments qui doivent obligatoirement être présents dans une fonction récursive valide ?
Réponse :
 Il faut pouvoir exprimer un algorithme sous forme d’une fonction de telle manière que sa valeur à un certain
rang ne dépende que de sa valeur aux rangs inférieurs.
 On doit aussi connaitre la solution pour les rangs initiaux.
6. Expliquez le gain d’utilisation des fonctions en programmation sur plusieurs avantages ! citez-les !^
Réponse :

1/3
ALI OUAHIOUNE
REDOUANE TLEMSANI
Algorithmique et structures de données

 Le code des algorithmes est plus simple, plus clair et plus court.
 Une seule modification dans la fonction sera automatiquement répercutée sur tous les algorithmes qui
utilisent cette fonction.
 L’utilisation de fonctions génériques dans des algorithmes différents permet de réaliser son travail et de
gagner du temps.
7. Qu’es ce qu’un ensemble d’adressage ?
Réponse :
Un environnement de données, appelé aussi espace d’adressage, correspond à l’ensemble des variables associées
exclusivement à un algorithme ou à une fonction.
8. Les deux sections de code ci-dessous sont-elles équivalentes ? Expliquez.
tant que (i < n) tant que ( (i < n) ET (t[i] != 0) )
{ tant que (t[i] != 0) { /* instructions */
{ /* instructions */ ii+1;
ii+1; }
}
i i+1;
}
Réponse :
Dans le code à gauche, si le tableau ne contient pas de valeur nulle, on atteint la fin du tableau sans que la boucle
interne s’arrête. On va donc chercher à accéder à des adresses qui ne correspondent pas à des éléments du
tableau. Ce n’est pas le cas avec le code fourni à droite : la boucle s’arrête dès que l’on atteint la fin du tableau.
9. Quelles sont les trois modes d’ouverture d’un fichier ? Donnez des exemples avec la syntaxe utilisée dans le cours !
Réponse :
Modes : Lecture, Ecriture, Ajout
Ouvrir “Tata1.txt” sur 1 pour Lecture
Ouvrir “Tata2.txt” sur 2 pour Ecriture
Ouvrir “Tata3.txt” sur 3 pour Ajout
10. Chaque déclaration de tableau ne doit pas donner, implicitement ou explicitement, l’information sur
A. Le nom du tableau
B. le type des données
C. Les premières données de sauvegarde mémoire
D. La plage d’indices
11. Deux principales mesures pour l'efficacité d'un algorithme sont
A. Processeur et mémoire
B. Complexité et la capacité
C. Temps et l'espace mémoire
D. Données et l'espace mémoire

Exercice 1 5 points
Soit Z une matrice à m x n éléments réels. Ecrire l’algorithme qui permet la construction du vecteur Y définit
comme suit :
yi = 0 si ∑𝑛𝑗=1 𝑧𝑖𝑗 = 0 ou s’il existe j tels que zij=0 ;
yi = -1 sinon
Solution
Z : tableau|50, 50] de réel ;
Y : tableau[50] d’entier ;
I,j,m,n : entier ;
Trouv: booléen;

2/3
ALI OUAHIOUNE
REDOUANE TLEMSANI
Algorithmique et structures de données

S: reel;
DEBUT
Lire(m,n);
Pour I de 1 à m faire
Pour j de 1 à n faire
Lire (Z[i,j]) ;
Pour i de 1 à m faire
{
S0 ;
Trouvfaux ;
J1 ;
Tant que j <= n ET non trouv faire
{si Z[i,j]= 0 alors trouv  vrai ;
Sinon {ss+ Z[i,j]
Jj+1;}
}
Si non trouv alors si s=0 alors Y[i]0;
Sinon Y[i]-1;
Sinon Y[i]0;
}
Pour i de 1 à m faire
Ecrire (Y[i]) ;
Fin
Exercice 2 4.5 points
Écrire un programme permettant de déterminer et d’afficher le nombre des lettres alphabétique majuscules
dans un texte donné. Le texte étant saisi comme une chaîne de caractères contenant n de caractères (5 ≤ n ≤
20).
Solution
Algorithme nbMaj
var V,n,i:integer;
texte : chaine de caractère;
DEBUT
faire
Ecrire('’Donnez la taille de votre chaîne'’);
lire(n);
tant que (n<5 ou n>20]);

faire
Ecrire('Tapez votre chaîne');
Lire (texte);
Tant que(texte.longueur() = n);
Pour I de à n faire
si texte.iemecar()>”A” ou texte.iemecar() < ”Z” alors
V  V + 1;
Ecrire(‘’Le nombre des lettres alphabétiques Majuscules’’, V);
FIN

3/3
ALI OUAHIOUNE
REDOUANE TLEMSANI

Vous aimerez peut-être aussi