Vous êtes sur la page 1sur 4

Activité 1:

Écrire l’analyse et en déduire l’algorithme d’un programme qui permet de déterminer la


parité d’un entier n donné (utiliser la Forme simple réduite).
Analyse :
Résultat = Écrire (Message) Algorithme :
..Message.. = [Message’’Pair’’] Si N mod 0) Debut Parite
2<> 1 alors 1) Écrire (‘’ Taper un enier ‘’)
…Message  ‘’Impair’’... 2) Lire ( N )
Fin si 3) Message  ‘’Pair’’
…N…= …Donnée… (‘’ Taper un entier ‘’) 4) Si n mod 2 <>0 alors
Fin Parite. Message  ‘’Impair’’
T.D.O : Fin si
4) Ecrire (Message)
Objet Type Rôle 5) Fin Parité
N Entier Entier à saisir

Série III : Les Structures Conditionnelles Formes Simples, Complète et Généralisée


message Chaine Message de
parité
Activité 2:
Écrire l’analyse et en déduire l’algorithme d’un programme qui permet de déterminer la
parité d’un entier n donné (en utilisant la structure simple complète).
program parite;
uses wincrt;
var
n:integer;
begin
writeln('Donner un entier n :');
readln(n);
if (n mod 2 = 0) then
writeln(n,' est un Entier Pair')
else
writeln(n,' est un Entier Impaire');
end.

Activité 3:
On veut écrire un programme permettant de saisir un entier, puis afficher s’il est positif ou
négatif.
Résultat = 0) Début Signe program signe;
1) uses wincrt;
var
n:integer;
begin
writeln('Donner un entier
n :');
readln(n);
FIN Signe if (n >= 0) then
writeln(n,' est un Entier
Positif')
else
writeln(n,' est un Entier
Negatif');
end.
1
Activité 4:
Écrire une analyse et un algorithme qui lit trois notes d’examen et leur coefficient, puis
affiche la moyenne en précisant “éliminé” si la moyenne est inférieure à 10, “admissible”
dans le cas contraire.

program note;
uses wincrt;
var
n1,n2,n3,c1,c2,c3:integer;
moy:real;
begin
writeln('Donner note n1 :');
readln(n1);
writeln('Donner le coefficient c1:');
readln(c1);

writeln('Donner note n2 :');


readln(n2);
writeln('Donner le coefficient c2 :');
readln(c2);

writeln('Donner note n3 :');


readln(n3);
writeln('Donner le coefficient c3 :');

Série III : Les Structures Conditionnelles Formes Simples, Complète et Généralisée


readln(c3);
moy:=((n1*c1)+(n2*c2)+(n3*c3))/(c1+c2+c3);
if (moy >= 10) then
writeln('Admis')
else
writeln('Eliminé');
end.

Activité 5:
Écrire un programme réalisant la facturation d'un article livré en un ou plusieurs
exemplaires. On fournira en données le nombre d'articles et leur prix unitaire hors-taxe. Le
taux de TVA sera toujours de 20,6%. Si le montant TTC dépasse 1000TND, on établira une
remise de 5%. On cherchera à ce que le dialogue se présente ainsi:
Nombre d'articles : 27
Prix unitaire ht : 248.65 TND
Montant TTC : 8096,54 TND
Remise : 404,83 TND
Net à payer : 7691,71
program nature;
uses wincrt;
var
mttc,np,r,n,pu:real;

begin

writeln('Donner le nombre d''articles:');


readln(n);
writeln('Donner le prix unitaire de l''article:');
readln(pu);

mttc:=((n*pu)*120.6)/100;

if(mttc>1000) then
r:=0.05
else
r:=0;

np:=mttc-(r*mttc);

writeln('Le Nombre d''articles :',n);


writeln('Le Prix Unitaire Hors Taxes :',pu);
writeln('Montant TTC :',mttc);
writeln('Remise: ',r);
writeln('Le Net à payer :',np);

2
end.
Activité 6:
On veut écrire un programme intitulé AFFICHE_JOUR permettant de lire un numéro de jour
puis l’affiche en toute lettres.
Résultat = Ecrire (Jour) program jour;
Jour = [ ] Si uses wincrt;
var
n:byte;

begin
writeln('Donner numéro du jour :');
readln(n);
if (n=1) then
writeln('Dimanche')
else if (n=2) then
writeln('Lundi')
else if (n=3) then
writeln('Mardi')
else if (n=4) then

Série III : Les Structures Conditionnelles Formes Simples, Complète et Généralisée


writeln('Mercredi')
else if (n=5) then
writeln('Jeudi')
else if (n=6) then
j = Donnée (‘’ Saisir un entier ‘’) writeln('Vendredi')
else if (n=7) then
FIN AFICHE _JOUR
writeln('Samedi')
else
writeln('Numéro de jour incorrecte');
end.

Activité 7:
Il s’agit de saisir un caractère quelconque, puis d’afficher sa nature (lettre, chiffre, ou
symbole).
Résultat = Aff program nature;
Aff=[]SI c dans [‘’0’’..’’9’’] alors uses wincrt;
Ecrire (‘’c’est un chiffre’’) var
Sinon SI majus(c) dans [‘’A’’..’’Z’’] alors c:char;
Ecrire (‘’c’est une lettre alphabétique’’)
Sinon begin
Ecrire (‘’c’est un symbole’’) writeln('Donner le caractére :');
Fin Si readln(c);
C = donnée (‘’Donner le caractère :’’) if (c in ['0'..'9']) then
Fin Nature writeln('Chiffre')
else if (c in ['a'..'z']) or (c in ['A'..'Z'])
then
writeln('Lettre')
else
writeln('Symbole');
end.

Activité 8:
Ecrire une analyse et programme en pascal qui affiche ce menu :
Donner deux réels a et b :
Donner le choix de l’opération :
1. Effectuer une multiplication
3
2. Effectuer une addition
3. Effectuer une soustraction
4. Effectuer une division
Puis suivant le choix de l'utilisateur et utilisant des instructions if simples, afficher un
message lui indiquant l'opération et le résultat en respectant le modèle :
'Vous avez choisi une multiplication et le résultat est :'
program calcul;
uses wincrt;
var
a,b,r:real;
o:byte;
msg:string;

begin

writeln('Donner a:');
readln(a);
writeln('Donner b:');
readln(b);

Série III : Les Structures Conditionnelles Formes Simples, Complète et Généralisée


writeln('Les Opérations possibles sont ;');
writeln(' 1. Multiplication');
writeln(' 2. Addition');
writeln(' 3. Soustraction');
writeln(' 4. Division');
writeln;
writeln('Donner le numéro de l''opération:');
readln(o);
if (o=1) then
begin
r:=a*b;
msg:='Multiplication';
end
else if (o=2) then
begin
r:=a+b;
msg:='Addition';
end
else if (o=3) then
begin
r:=a-b;
msg:='Soustraction';
end
else if (o=4) then
begin
if (b<>0) then
begin
r:=a/b;
msg:='Division';
end
else
begin
msg:='Division';
writeln('Division Impossible');
end;
end;

writeln('Vous avez choisi une opération de ',msg,' et le résultat


est :',r);
end.