Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
I- Les fonctions
Une function est un sous programme qui retourne obligatoirement qu’un seul resultat
1- Syntaxe
fonction nom-fonction (donnees : arg1 :type, arg2 :type , ….argn :type) :type-de-
retour
/*declaration des variables locales*/
Debut
Instruction
Retourner(resultat)
Fin
2- Exemple
Ecire une fonction qui recoit en parametre deux entiers puis calcul leur somme
Solution
Fonction somme (donnees : a,b :entier) :entier
Var s 0:entier
Debut
S a+b
Retourner(s)
fin
3- Exercice
Ecrire un sous programme qui permet de resoudre l’equation ax+b=0
Solution
Fonction equation (donnees : a,b :reel) : reel
Var x :reel
Debut
X -b/a
retourne (x)
fin
II- Les procedures
Ce sont des sp qui peut produire 0 ou plusieurs resultats .
Les resultats produits par la procedure ne sont pas retournes au programme appelant
mais les affichent elle-même
1- Syntaxe
Procedure nom_procedure donnees : p1,p2,..pn:type
Resultat: r1,r2, … pn:type
Donnees/resultat: d1, ..dn:type
/* variable locales*/
Debut
Instructions
Fin
2- Exemple
Ecrire une procedure qui recoit un parametre d’un nombre entier puis affiche la
table de multiplication de 1 a n de ce nombre
Solution
Procedure table_multiplication (donnees :a,n :entier)
Var i :entier
Debut
Pour i de 1 a n faire
Afficher(a,’’*’’,i,’’=’’,a*i)
Finpour
Fin
III- Tableau-sous programme
Exercice:
Ecrire un programme qui permet de creer un tableau pouvant contenir 100 entier et
affiche l’ensemble des valeurs de ce tableau
Solution
Algo : creation_tableau
cosnt n 100
type tableau=tableau(1—n)de entier
var tab :tableau
i : entier
debut
/*creation du tableau*/
Poutr i de 1 a n faire
Afficher( ‘’veuillez saisir la val de la cellule no’’,i)
Lire(tab[i])
Finpour
/*affichage du tableau*/
Pour i de 1 a n faire
Afficher(tab[i])
Finpour
Fin
Algo : creation_tableau
Const n 100
Var tab :tableau
I : entier
Debut
Creationtableau (tab, n)
Affichagetableau (tab, n)
Fin
n: entier
debut
pour i de 1 a n faire
lire(tab[i])
finpour
fin
exo2 : ecrire un programme qui fait appel a deux sous programme creationtableau et
affichagetableau qui permettent respectivement de créer un tableau de n entier et d’afficher le
tableau de n entier, n est un entier positif <=100 et sera saisi au clavier par l’utilisateur
solution
algo : creation_affichage_tableau
const 100
var tab :tableau
n :entier
debut
Repeter
Lire(n)
Jusqu’à(n>=1 et n<=m)
/*appel des sp*/
Creationtableau(tab,n)
Affichagetableau(tab,n)
Fin
/*code sp*/
n :entie
debut
pour i de 1 a n faire
lire(tab[i])
finpour
fin
n :entier
var i :entier
debut
pour i de 1 a n faire
afficher(tab[i])
finpour
fin
les enregistrements :
c’est un type compose qui permet de créer des variables capables de stocker des informations de
type different
Exemple : on souhaite enregistrer les infos des produits, chaque produit etant caracterise par libelle
de type chaine, un prix unitaire de type entier et une quantite de type entier
Solution
Debut
Libelle : chaine
Pu : entier
Qte : entier
Fin
Tableau
Pour ecrire dans une variable de type enregistrement on met d’abord le nom de l’enregistrement
(ex :pdt) : nom_egt. Nom_champ val ou lire (nom_egt. Nom_champ)
Exemple :
Pdt.libelle ‘’ordinateur’’
Pdt.pu 300.000
Pdt.qte 4
Ou
Lire (pdt.libelle)
Lire (pdt.pu)
Lire (pdt.qte)
Ou
Lire (pdt.libelle,pdt.pu,pdt.qte)
Ecrire un programme qui permet de saisir puis d’afficher les informations d’un etudiant. L’etudiant
est saisi sous la forme d’un enregistrement contenant les informations : matricule (de type chaine),
nom (de type chaine), pronom(de type chaine), sexe (caractere)
methode
Algo : nom_algo
/*declaration de l’enregistrement*/
Debut
Fin
Solution
Algo : saisie_et_affichage
Debut
Matricule : entier
Nom : chaine
Prenom : chaine
Sexe : caractere
Fin
Debut
Lire (etd.matricule)
Lire (etd.nom)
Lire (etd.sexe)
Afficher (‘’matricule :’’,etd.matricule)
Afficher (‘’nom :’’,etd.nom)
Afficher (‘’prenom’’,etd.prenom)
Afficher (‘’sexe’’,etd.sexe)
Fin
Synataxe
/*declaration de l’enregistrement*/
Debut
Champ 1
Champ 2
Fin
Const n val
Exemple : declaration d’un tableau on suppose que l’etudiant est caracterise par le matricule, le
nom, le prenom.
Debut
Matricule : entier
Nom : chaine
Prenom : chaine
Fin
Const n val
Var tab : tableau
Lire(nom_tableau[i].nom_du_champ n)