ALGORITHME parite
var n: entier;
DEBUT
Ecrire("déterminer si un nombre est pair ou impair\n");
Ecrire("entrez un nombre");
Lire(n);
SI(nMOD2=0) ALORS
Ecrire("le nombre est pair");
SINON
Ecrire("le nombre est impair");
FINSI
FIN
ALGORITHME affichernbre
var i:entier;
DEBUT
Ecrire("afficher les nombres de 1 à 10\n");
POUR i allant de 1 à 10 FAIRE
Ecrire(i);
FINPOUR
FIN
ALGORITHME affichernombre
var i:entier;
DEBUT
Ecrire("afficher les nombres de 1 à 10\n");
i=1;
REPETER
Ecrire(i);
i=i+1;
JUSQU'A(i<=10)
FIN
ALGORITHME affichenbre
var i:entier;
DEBUT
Ecrire("afficher les nombres de 1 à 10\n");
i=1;
TANTQUE(i<=10) FAIRE
Ecrire(i);
i=i+1;
FINTANTQUE
FIN
ALGORITHME joursemaine
var n:entier;
DEBUT
Ecrire("déterminer le jour de la semaine en fonction d'un nombre\n");
Ecrire("entrer un nombre");
Lire(n);
SELON (n) FAIRE
1: Ecrire("Lundi");
2: Ecrire("Mardi");
3: Ecrire("Mercredi");
4: Ecrire("Jeudi");
5: Ecrire("Vendredi");
6: Ecrire("Samedi");
7: Ecrire("Dimanche");
SINON Ecrire("Numero incorrect");
FINSELON
FIN
ALGORITHME signe
var n:entier;
DEBUT
Ecrire("déterminer le signe d'un nombre\n");
Ecrire("entrer un nombre");
Lire(n);
SI(n>=0) ALORS
Ecrire("ce nombre est positif");
SINON
Ecrire("ce nombre est negatif");
FINSI
FIN
ALGORITHME parite1
var i:entier;
DEBUT
Ecrire("afficher les nombres pairs de 1 à 10\n");
POUR i allant de 2 à 10 PAS 1 FAIRE
SI(iMOD2=0) ALORS
Ecrire(i);
FINSI
FINPOUR
FIN
ALGORITHME parite2
var i:entier;
DEBUT
Ecrire("afficher les nombres impairs de 1 à 10\n");
i=1;
REPETER
SI(iMOD2<>0) ALORS
Ecrire(i);
FINSI
i=i+1;
JUSQU'A(i<=10)
FIN
ALGORITHME afficherinverse
var i:entier;
DEBUT
Ecrire("afficher les nombres de 1 à 10 en ordre inverse\n");
i=10;
TANTQUE(i>=1) FAIRE
Ecrire(i);
i=i-1;
FINTANQUE
FIN
ALGORITHME moisannee
var n:entier;
DEBUT
Ecrire("déterminer le mois de l'année en fonction d'un nombre\n");
Ecrire("entrer un nombre\n");
Lire(n);
SELON(n) FAIRE
1: Ecrire("Janvier");
2: Ecrire("Février");
3: Ecrire("Mars");
4: Ecrire("Avril");
5: Ecrire("Mai");
6: Ecrire("Juin");
7: Ecrire("Juillet");
8: Ecrire("Août");
9: Ecrire("Septembre");
10: Ecrire("Octobre");
11: Ecrire("Novembre");
12: Ecrire("Décembre");
SINON Ecrire("Numéro incorrect");
FINSELON
FIN
ALGORITHME comparaison
var a,b:entier;
DEBUT
Ecrire("comparer deux nombres\n");
Ecrire("entrer le premier nombre\n");
Lire(a);
Ecrire("entrer le deuxième nombre");
Lire(b);
SI(a>b) ALORS
Ecrire("a est supérieur à b");
SINON
Ecrire("a est inférieur à b");
FINSI
FIN
ALGORITHME nombre
var c:entier;
DEBUT
Ecrire("afficher les nombres de 1 à 10 en utilisant une variable compteur\n");
c=1;
POUR c allant de 1 à 10 FAIRE
Ecrire(c);
FINPOUR
FIN
ALGORITHME affichenombre2
var c:entier;
DEBUT
Ecrire("afficher les nombres de 1 a 10 en utilisant la variable compteur\n") ;
c=1;
REPETER
Ecrire(c);
c=c+1;
JUSQU'A(c<=10)
FIN
ALGORITHME affichenombre3
var c:entier;
DEBUT
Ecrire("afficher les nombres de 1 à 10 en utilisant un compteur\n");
c=1;
TANTQUE(c<=10) FAIRE
Ecrire(c);
c=c+1;
FINTANTQUE
FIN
ALGORITHME multiple
var n:entier;
DEBUT
Ecrire("déterminer si un nombre est multiple de 3 ou de 5\n");
Ecrire("entrer un nombre\n");
Lire(n);
SI(nMOD3=0 et nMOD5=0) ALORS
Ecrire("le nombre est multiple de 3 et de 5");
SINON
SI(nMOD3=0) ALORS
Ecrire("le nombre est multiple de 3");
SINON
SI(nMOD5=0) ALORS
Ecrire("le nombre est multiple de 5");
SINON
Ecrire("le nombre n'est pas multiple de 3 ou de 5");
FINSI
FINSI
FINSI
FIN
ALGORITHME factoriel
var f,n:entier;
FONCTION calculfactoriel(n:entier):entier;
var i,f:entier;
DEBUT
f=1;
POUR i allant de 1 à n FAIRE
f=f*i;
FINPOUR
RETURN f;
FINFONCTION
DEBUT
Ecrire("calculer le factoriel d'un nombre");
Ecrire("entrez un nombre");
Lire(n);
f=calculfactiriel(n);
Ecrire("le factoriel de ce nombre est:",f);
FIN
ALGORITHME surfacerect
var s,lo,la:reel;
FONCTION calculsurface(lo:reel , la:reel):reel
var s:reel;
DEBUT
s=lo*la;
return s;
FINFONCTION
DEBUT
Ecrire("calculer la surface d'un rectangle");
Ecrire("entrer la longueur");
Lire(lo);
Ecrire("entrer la largeur");
Lire(la);
s=calculsurface(lo,la);
Ecrire("la surface est:", s);
FIN
ALGORITHME surfacecercle
const pi=3,14;
var r,s:reel;
FONCTION calculsurface(r:reel):reel;
var s:reel;
DEBUT
s=r*r*3,14;
return s;
FINFONCTION
DEBUT
Ecrire("calculer la surface d'un cercle");
Ecrire("entrer le rayon");
Lire(r);
s=calculsurface(r);
Ecrire("la surface est:", s);
FIN
ALGORITHME surfacetriangle
var s,b,h:reel;
FONCTION calculsurface(b:reel , h:reel):reel;
var s:reel;
DEBUT
S=(b*h)/2;
return s;
FINFONCTION
DEBUT
Ecrire("calculer la surface du triangle");
Ecrire("entrer la base");
Lire(b);
Ecrire("entrer la hauteur");
Lire(h);
s=calculsurface(b,h);
Ecrire("la surface est:", s);
FIN
ALGORITHME moyenneetudiant
var note:tableau[n] de entier;
var S,M:reel;
i:entier;
DEBUT
S=0;
Ecrire("calculer la moyenne d'un etudiant");
Ecrire("entrer le nombre de notes");
Lire(n);
POUR i de 0 à n-1 FAIRE
Ecrire("entrer la note");
Lire (note[i]);
S = S + note[i];
FINPOUR
M = S/n;
Ecrire("La moyenne des notes est : ", M);
FIN
ALGORITHME info
Type Tetudiant=ENREGISTREMENT
matricule,nom,prenom: chaine de caractère;
age,telephone: entier;
FINENREGISTREMENT
var E : etudiant;
DEBUT
Ecrire("afficher les informations d'un etudiant");
Ecrire("entrer le matricule de l'etudiant");
Lire([Link]);
Ecrire("entrer le nom de l'etudiant");
Lire([Link]);
Ecrire("entrer le prenom de l'etudiant");
Lire([Link]);
Ecrire("entrer l'age de l'etudiant");
Lire([Link]);
Ecrire("entrer le numero de telephone de l'etudiant");
Lire([Link]);
Ecrire("matricule :", [Link]);
Ecrire("nom:", [Link]);
Ecrire("prenom:", [Link]);
Ecrire("age:", [Link]);
Ecrire("telephone:", [Link]);
FIN
ALGORITHME affichenbre4
var a:entier;
DEBUT
Ecrire("afficher les nombres de 1 à 10 en utilisant un accumulateur\n");
a=1;
POUR a allant de 1 à 10 FAIRE
Ecrire(a);
FINPOUR
FIN
ALGORITHME affichenbre5
var a:entier;
DEBUT
Ecrire("afficher les nombres de 1 à 10 en utilisant un accumulateur\n");
a=1;
REPETER
Ecrire(a);
a=a+1;
JUSQU'A (a>10)
FIN
ALGORITHME affichenbre6
var a:entier;
DEBUT
Ecrire("afficher les nombres de 1 à 10 en utilisant un accumulateur\n");
TANTQUE(a<=10) FAIRE
Ecrire(a);
a=a+1;
FINTANQUE
FIN
ALGORITHME affichelements
var tab:tableau[] d'entier;
var n,i:entier;
PROCEDURE elements(entrée tab:tableau[]:entier, n:entier);
var i: entier;
POUR i allant de 1 à n FAIRE
Ecrire("l'element ",i,":",tab[i]);
FINPOUR
FINPROCEDURE
DEBUT
Ecrire("afficher les elements d'un tableau");
POUR i allant de 1 à n FAIRE
Ecrire("entrer l'element", i);
Lire(tab[i]);
FINPOUR
elements(tab:tableau[], n);
FIN
ALGORITHME temperature
var temp:tableau[7] de reel;
var i: entier;
s,m:reel;
DEBUT
s=0;
POUR i allant de 1 à 7 FAIRE
Ecrire("entrer la temperature du jour", i,);
Lire(temp[i]);
s=s+temp[i];
FINPOUR
m=s/7;
Ecrire("la temperature moyenne d'une semaine est:", m);
FIN
ALGORITHME distance
var d,x1,x2,y1,y2:reel;
DEBUT
Ecrire("calculer la distance entre deux points");
Ecrire("entrer les coordonnées du premier point");
Lire(x1,y1);
Ecrire("entrer les coordonnées du deuxième point");
Lire(x2,y2);
Ecrire("la distance entre les deux points est:", SQRT((x2-x1)(x2-x1)+(y2-y1)(y2-y1)));
FIN
ALGORITHME infoproduit
Type Tproduit=ENREGISTREMENT
Nom,code: chaine de caractère;
pu,pt: reel;
qte:entier;
FINENREGISTREMENT
var p : produit;
DEBUT
Ecrire("afficher les informations d'un produit et calculer le prix");
Ecrire("entrer le nom du produit");
Lire([Link]);
Ecrire("entrer le code du produit");
Lire([Link]);
Ecrire("entrer le prix unitaire");
Lire([Link]);
Ecrire("entrer la quantite");
Lire([Link]);
[Link]=[Link]*[Link];
Ecrire("nom :", [Link]);
Ecrire("code:", [Link]);
Ecrire("pu:", [Link]);
Ecrire("qte:", [Link]);
Ecrire("pt:", [Link]);
FIN
ALGORITHME infoclient
Type Tclient=ENREGISTREMENT
nom,prenom,datenaiss,adresse,email: chaine de caractère;
telephone: entier;
FINENREGISTREMENT
var c : client;
DEBUT
Ecrire("afficher les informations d'un client");
Ecrire("entrer le nom du client");
Lire([Link]);
Ecrire("entrer le prenom du client");
Lire([Link]);
Ecrire("entrer la date de naissance du client");
Lire([Link]);
Ecrire("entrer l'adresse du client");
Lire([Link]);
Ecrire("entrer l'email du client");
Lire([Link]);
Ecrire("entrer le numero de telephone du client");
Lire([Link]);
Ecrire("nom :", [Link]);
Ecrire("prenom:", [Link]);
Ecrire("date de naissance:", [Link]);
Ecrire("adresse:", [Link]);
Ecrire("email:", [Link]);
Ecrire("telephone:", [Link]);
FIN
ALGORITHME infoeleve
Type Televe=ENREGISTREMENT
nom,prenom,datenaiss,adresse,email,sexe: chaine de caractère;
telephone: entier;
FINENREGISTREMENT
var e : eleve;
DEBUT
Ecrire("afficher les informations d'un eleve");
Ecrire("entrer le nom de l'eleve");
Lire([Link]);
Ecrire("entrer le prenom de l'eleve");
Lire([Link]);
Ecrire("entrer la date de naissance de l'eleve");
Lire([Link]);
Ecrire("entrer l'adresse de l'eleve");
Lire([Link]);
Ecrire("entrer l'email de l'eleve");
Lire([Link]);
Ecrire("entrer le sexe de l'eleve");
Lire([Link]);
Ecrire("entrer le numero de telephone de l'eleve");
Lire([Link]);
Ecrire("nom :", [Link]);
Ecrire("prenom:", [Link]);
Ecrire("date de naissance:", [Link]);
Ecrire("adresse:", [Link]);
Ecrire("email:", [Link]);
Ecrire("sexe:", [Link]);
Ecrire("telephone:", [Link]);
FIN
ALGORITHME resultat
var note:reel;
DEBUT
Ecrire("déterminer le résultat d'un examen en fonction d'une note");
Ecrire("entrer la note");
Lire(note);
SELON(note) FAIRE
cas >=0 et <=5 : mention := "faible";
cas >=5 et <=8 : mention := "mediocre";
cas >=8 et <=10 : mention := "insuffisant";
cas >=10 et <=12 : mention := "passable";
cas >=12 et <=14 : mention := "assez bien";
cas >=14 et <=16 : mention := "bien";
cas >=16 et <=18 : mention := "tres bien";
cas >=18 et <=20 : mention := "excellent";
SINON Ecrire("error");
FINSELON
FIN
ALGORITHME infoemploye
Type Temploye=ENREGISTREMENT
nom,prenom: chaine de caractère;
heurestravaillees,tauxhoraire: reel;
FINENREGISTREMENT
var em : employe;
DEBUT
Ecrire("afficher les informations d'un employe et calculer son salaire");
Ecrire("entrer le nom de l'employe");
Lire([Link]);
Ecrire("entrer le prenom de l'employe");
Lire([Link]);
Ecrire("entrer le nombre d'heures travaillées de l'employé");
Lire([Link]);
Ecrire("entrer le taux horaire de l'employe");
Lire([Link]);
[Link]=[Link]*[Link];
Ecrire("nom :", [Link]);
Ecrire("prenom:", [Link]);
Ecrire("salaire:", [Link]);
FIN