Algorithme NomAlgorithme ; IV) Quelques fonctions en Pascal : Sizeof(x) Sin(x), Cos(x), ArcTan(x), Abs(x) Constante {déclaration des constantes} Sqr(x) x² Sqrt(x) √𝑥 Ln(a) exp(n*ln(a)) an Type {définition des nouveaux types} Variable {déclaration des variables de l’algorithme (variables V) Quelques Règles : globales)} a) Utilisation des fonctions : On utilise une fonction lorsqu’on a un seul résultat de type simple (entier, réel, caractère, booléen), par {Définition des fonctions et procédures} exemple pour calculer : max, min, nombre d’occurrence, existe ou DEBUT {début de l’algorithme} n’existe pas, moyenne…. {les instructions de l’algorithme + appels aux fonctions et procédures} b) Utilisation des procédures : on utilise une procédure lorsqu’on FIN {fin de l’algorithme} demande de : - Calculer un résultat de type composé (vecteur, matrice, …). - Calculer deux résultats ou plus. II) Forme générale d’une fonction : (paramètres de la - Faire un affichage ou une lecture. fonction=données) c) Utilisation de “var“ : Fonction Nom_Fonction (Idf1 : type1, Idf2 : type2, …) : type du On utilise “var“ devant un paramètre lorsque ce paramètre varie résultat ; (change) dans le sous algorithme. Variable {déclaration des variables de la fonction (variables locales)} VI) Quelques problèmes : Debut {début de la fonction} Problème 1 : {les instructions de la fonction} Etant donné un vecteur T de taille n (n≤50) d’entiers positifs. NomFonctionRésultat ; - Ecrire un algorithme qui affiche le plus grand nombre premier s’il Fin {fin de la fonction} existe, et affiche le message “pas de nombre premier“, si tous les nombres ne sont pas premiers. III) Forme générale d’une procédure : (paramètres de la procédure=données+résultats) Problème 2 : soient x, y deux entiers, écrire un algorithme qui utilise Procédure Nom_procédure (Idf1 : type1, Idf2 : type2, …) ; une fonction MoitieF pour calculer la moitié de x et une procédure MoitieP pour calculer la moitié de y. Variable {déclaration des variables de la procédure (variables locales)} Problème 3 : Debut {début de la procédure} - Ecrire un algorithme qui calcul le maximum entre les maximums de {les instructions de la procédure} deux vecteurs de tailles respectives n, m avec n≤100, m≤100. Fin {fin de la procédure} - Ecrire un algorithme qui utilise des sous-algorithmes pour faire le travail précédant.