1/Définitions : 1.1. Algorithmique : Désigne la science des algorithmes, le pre

1/Définitions : 1.1. Algorithmique : Désigne la science des algorithmes, le premier livre qui a été apparu au (780-850) par Al Khawarizmi qui décrive des méthodes de calculs algébriques. 1.2. Programmation : Et un lien intermédiaire entre le langage machine le langage humain, qui permet de traiter les données pour obtenir des résultats. Est un ensemble des règles traduit dans un langage de programmation compréhensible et lisible par la machine (ordinateur). 1.3. Définition de l’algorithme Est une suite ordonnée ou est une séquence finie des opérations(ou instructions) assimilé ou exécute pour résoudre un problème donné. Est une suite des instructions élémentaire réalisée pour restitue en sortie des résultats. a- Instruction : est une action élémentaire exécutable par l’ordinateur. b- Un programme : Est un algorithme lisible de tout écrit ou saisie dans un langage de programmation (durant cette année on étudier le langage pascal) afin que la machine puisse de l’exécuter d’une manière efficace (donne des bons résultats) et rapide (prendre moins de temps). Analyse de Problème L’algorithme suit les étapes suivantes : 1- Saisir les données déterminées d’une manière très précise nécessaires pour la résolution un problème donné. 1 Algorithme Résultat Programme 2- Le traitement de données saisis pour résoudre le problème. 3- L’affichage des résultats obtenus après le traitement. Un algorithme se compose d’un entête(le nom, déclarations, et d’un corps (Début, suite instruction, fin). Nom : le nom de l’algorithme Variable : déclaration des variables Début Instruction 1 Instruction2 . . .. Instruction N Fin 2/Quelque algorithme on pascal : 2-1/Les tableau : Objectif Développer des algorithmes de traitement de tableaux. 2-1-1/Définition : Un tableau est un ensemble d’éléments de même type, repérés au moyen d’indices entiers. Les éléments d’un tableau sont rangés selon un ou plusieurs axes appelés dimensions du tableau. Dans les tableaux à une dimension (qui permettent de représenter par exemple des vecteurs au sens mathématique du terme), chaque élément est repéré par un seul entier, mais le fortran accepte des tableaux jusqu’à 7 dimensions, où chaque élément est désigné par un 7 indices. Un tableau à une dimension est parfois appelé vecteur. Il peut être représenté sous la forme suivante : L(1) L(2) L(3) L(4) …………………………………. L(n) - Dimension du tableau : 1 2 - Taille du tableau : n - Les L(i), i=1, 2, …, n doivent être de même type 2-1-2/Déclaration des tableaux : Comme pour les variables simples se pose le problème du type du tableau, c’est-à-dire de ses éléments. Tous les éléments du tableau sont de même type. Si le nom du tableau apparait dans un ordre type (REAL, INTEGER, ….) le problème est résolu. Sinon c’est que le tableau est apparu dans un ordre DIMENSION, et la première lettre lève toute confusion, si cette lettre est I, j, K, L, M ou n le tableau est entier, sinon réel. Examples: REAL A (10), B (15, 5), I, C (3, 7, 9) INTEGER X, Y (0:3) DIMENSION Z (7, 3), K (12) Ces déclarations indiquent : A est un tableau réel à 1 dimension, de 10 éléments B est un tableau réel à 2 dimensions, de 15 lignes et 5 colonnes. I est une variable simple réelle J est un tableau réel à 3 dimensions égales à 3, 7 et 9 X est une variable simple entière Y est un tableau entier à 1 dimension de 4 éléments Z est un tableau réel à 2 dimensions, de 7 lignes et 3 colonnes K est un tableau entier à 1 dimension de 12 éléments 2-1-3/Terminologie des tableaux : – rang d’un tableau : nombre de ses dimensions – étendue (extent) d’un tableau selon une de ses dimensions : nombre d’éléments dans cette dimension – bornes (bounds) d’un tableau selon une de ses dimensions : limites inférieure et supérieure des indices dans cette dimension. La borne inférieure par défaut vaut 1. – profil (shape) d’un tableau : vecteur dont les composantes sont les étendues du tableau selon ses dimensions ; sa taille est le rang du tableau. – taille (size) d’un tableau : nombre total des éléments qui le constituent, c’est-à-dire le produit des éléments du vecteur que constitue son profil. – deux tableaux sont dits conformants (conformable) s’ils ont le même profil La déclaration d’un tableau s’effectue grâce à l’attribut DIMENSION qui indique le profil du tableau, mais aussi éventuellement les bornes, séparées par le symbole « : ». Exemples : 3 REAL, DIMENSION X(15) REAL, DIMENSION Y (1:5,1:3) REAL, DIMENSION Z (-1:3,0:2) Le tableau X est de rang 1, Y et Z sont de rang 2. L’étendue de X est 15, Y et Z ont une étendue de 5 et 3. Le profil de X est le vecteur (/ 15 /), celui de Y et Z est le vecteur (/ 5,3 /). La taille des tableaux X, Y et Z est 15. Les tableaux Y et Z sont conformants. 2-1-4/Manipulation d’un tableau: Une fois déclaré, un tableau peut être utilisé comme un ensemble de variables simples. Les trois manipulations de base sont l’affectation, la lecture et l’écriture. a- L’affectation : Pour affecter une valeur à un élément i d’un tableau nommé par exemple A, on écrira : A(i) ← valeur. Par exemple, l’instruction : A(0) ← 20 ; affecte au premier élément du tableau A la valeur 20. Pour affecter la même valeur à tous les éléments d’un tableau A de type numérique et de dimension 100, on utilise une boucle. b- La lecture : Comme les variables simples, il est possible aussi d’assigner des valeurs aux éléments d’un tableau lors de l’exécution c.-à-d. les valeurs sont saisies par l’utilisateur à la demande du programme. Exemple : Écrire "Enter une note :" Lire A(6) Dans cet exemple, la valeur saisie est affectée au sixième (6ème) élément du tableau A. c- L’écriture : De façon analogue à la lecture, l’écriture de la valeur d’un élément donné d’un tableau s’écrira comme suit : écrire A(i) Cette instruction permet d’afficher la valeur de l’élément i du tableau A. 2-1-5/Quelques des exemple : Exemple 1: Ecrire un algorithme qui déclare et remplisse un tableau de 7 valeurs numériques réels en les mettant toutes à zéro. Solution : 4 Algorithme : Algorithme remplissage Tableau A(7) : réel Variable i : entier Début Pour i = 1 à 7 A(i) = 0 Fin Pour Fin Programme Fortran: Program remplissage Dimension A (7) INTEGER I Do I=1, 7 A(i) = 0 Enddo END Exemple 2: Ecrire un algorithme qui calcule le plus grand écart dans un tableau d’entiers. Rappel : l’écart entre deux entiers x et y est la valeur absolue de leur différence |x − y Solution : Algorithme écart Entier tableau(n), i, Min, Max Début Pour i=0, n −1 Lire tableau(i) Fin Pour Min = tableau(i) Max = tableau (i) Pour i=0, n −1 Si (tableau(i)) < min) alors Min = tableau (i) Fin si Si (tableau(i)> max) alors Max = tableau(i) Fin si Ecrire (max – min) Fin Exemple 3: 1- Que produit l’algorithme suivant ? 5 Tableau Nb(5) en Entier Variable i en Entier Début Pour i ← 0 à 5 Nb(i) ← i * i Fin pour Pour i ← 0 à 5 Ecrire Nb(i) Fin pour Fin 2- Peut-on simplifier cet algorithme avec le même résultat ? 3- Traduire l’algorithme en programme fortran puis exécuter et affichés l’état de l’écran. Solution : 1- Cet algorithme remplit un tableau avec six valeurs : 0, 1, 4, 9, 16, 25. Il les écrit ensuite à l’écran. 2- Simplification : Tableau Nb(5) en Numérique Variable i en Numérique Début Pour i = 0 à 5 Nb(i) = i * i Ecrire Nb(i) Fin pour Fin Program fortrant : INTEGER I DIMENSION NB(10) DO I=1,5 NB(i)=i*i WRITE(*,*)NB(i) ENDDO END Exécution du programme : 1 4 9 16 25 Press any key to continue 6 3/les matrices : 3-1/Definition: Une matrice est un tableau à deux dimensions L et C avec L constitue le nombre de lignes de la matrice et C le nombre de colonnes de la matrice. On dit qu’une matrice est une matrice carrée d’ordre n si L=C=n 3-2/Quelque des exemple : Exemple 1: Lecture et affichage d'une matrice Écrire un algorithme/programme PASCAL qui permet de lire et afficher une matrice de type réel A de N lignes et M colonnes. Solution N M A(i=1..N, j=1..M) A Le programme PASCAL 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 P rogram exP1_lecture_ecriture; Uses wincrt ; var A : array[1..10, 1..10] of Real; i, j, N, M : integer; Begin {Les entrées} Write('Donner les dimensions de la Matrice A : '); Read(N, M); Writeln('Donner les composantes de la matrice A : '); For i:=1 to N do For j:=1 to M do Read( A[i, j] ); {Les traitements} {Les sorties} Writeln('L''affichage de la matrice A : '); For i:=1 to N do 7 Algorithme exP1_lecture_ecriture Variables A:Tableau [1..10,1..10] de Réel i,j, N, M : entier Début Lire(N, M) Pour i←1 à N faire Pour uploads/Litterature/ les-tableux-et-les-matrices.pdf

  • 12
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager