0% ont trouvé ce document utile (0 vote)
7 vues29 pages

Algorithmes de base en programmation

Le document présente une série d'algorithmes en pseudo-code pour diverses opérations, telles que déterminer si un nombre est pair ou impair, afficher des nombres, calculer des surfaces de formes géométriques, et gérer des informations sur des étudiants, clients, et employés. Chaque algorithme est structuré avec des instructions de lecture, d'écriture et de contrôle de flux. Ces algorithmes illustrent des concepts de base en programmation, y compris les boucles, les conditions, et les fonctions.

Transféré par

naomiejessica60
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
7 vues29 pages

Algorithmes de base en programmation

Le document présente une série d'algorithmes en pseudo-code pour diverses opérations, telles que déterminer si un nombre est pair ou impair, afficher des nombres, calculer des surfaces de formes géométriques, et gérer des informations sur des étudiants, clients, et employés. Chaque algorithme est structuré avec des instructions de lecture, d'écriture et de contrôle de flux. Ces algorithmes illustrent des concepts de base en programmation, y compris les boucles, les conditions, et les fonctions.

Transféré par

naomiejessica60
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

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

Vous aimerez peut-être aussi