Chapitre 2 :Tableaux Pr. Aissam MESRAR Ecole ESIAM.

Slides:



Advertisements
Présentations similaires
Les Structures.
Advertisements

Initiation à la programmation et algorithmique cours 4
Algorithmique (suite)
Chapitre 3 Les Formulaires en PHP
Langage PHP : Chapitre 1 Pr. Aissam MESRAR Ecole ESIAM.
Cours n°2M2. IST-IE (S. Sidhom) UE 303 Promo. M2 IST-IE 2005/06 Conception dun système d'information multimédia Architecture trois-tiers : PHP/MySQL &
C.
Les fonctions de XPath et XSLT
TP n°1 PHP LES BASES Premier programme Affichage
Personal Home Page / Hypertext Processor (PHP)
Les structures de données
Structures et unions types énumérés Qu'est-ce qu'une structure
Chap. 1 Structures séquentielles : listes linéaires
Algorithme et programmation
Initiation à la programmation et algorithmique cours 3
Lycée Louis Vincent SEANCE 6 Python Les listes Lundi 25 novembre 2013.
Chapitre IV. Structures linéaires (piles, files, listes chaînées)
Regrouper des éléments de même type et pouvoir y accéder à laide dun identificateur et dun indice. Objectif des tableaux.
Cours 7 - Les pointeurs, l'allocation dynamique, les listes chaînées
Structures de données linéaires
Leçon 6 : Structures de données dynamiques IUP 2 Génie Informatique Méthode et Outils pour la Programmation Françoise Greffier.
II. Chaînage, SDD séquentielles
Programmation fonctionnelle Le langage LISP
Les Classes les structures en C (struct) regroupent des variables : structuration de l'analyse mais problèmes de cohérence problèmes de sécurité d'accès.
Standard Template Library (STL)
Python La programmation objet
Les pointeurs Enormément utilisé en C/C++ ! Pourquoi? A quoi ça sert?
Structures de données IFT Abder Alikacem La classe vector Édition Septembre 2009 Département dinformatique et de génie logiciel.
Ensembles Définition d’un ensemble. Opérations sur les ensembles. Accès, suppression et ajout d’éléments d’un ensemble. Fonctions permettant de manipuler.
Manipulation de formulaires en Javascript
Chapitre 9 Les sous-programmes.
Standard Template Library
CSI3525: Concepts des Langages de Programmation Notes # 6: Langages de Programmation Fonctionelle II: Introduction au ML.
Formulaires, CGI et PHP David Gross-Amblard (CNAM-Vertigo/Cédric) Transparents originaux : Philippe Rigaux Projet 3I
Structures de données IFT-10541
Quel couleur?.
Plan cours La notion de pointeur et d’adresse mémoire.
L’essentiel du langage C
Le langage C Structures de données
Les pointeurs L'opérateur &.
Département Technologie de l’Information et de la Communication
Les adresses des fonctions
JavaScript.
 Syntaxe du langage PHP
Cours 4 - Trois algorithmes de recherche dans un tableau
Strings et Tableaux en Java
Sémantique des instructions pour le langage Z minimal Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Structures simples et tableaux Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Chaînes de caractères en langage c, c'est en fait un tableau
Cours LCS N°4 Présenté par Mr: LALLALI
1 Système d’exploitation Les scripts csh 1 ère Année Année Tienté HSU.
06:34:37 Programmation Web PHP Fonctions associées aux tableaux Jérôme CUTRONA
Cours n°4 Les tableaux associatifs
Mettre en formeExaminerManipuler Les fonctions printf() et sprintf Le traitement de chaîne de caractère La fonction printf() formate le contenu d'une chaîne.
Liste Une liste est une séquence d’éléments. Concept important: Chaque élément possède une position dans la liste. Notation: De quelles opérations a-t-on.
Conception de Programmes - IUT de Paris - 1ère année Quelques éléments du langage C++ Les références La surcharge de fonctions Les fonctions «
Les bases de l’algorithmique
Cours 5 - Trois algorithmes de tri d'un tableau
8PRO107 Éléments de programmation Les tableaux. Étude de cas 1 Description du problème : Lire une liste d’entiers et l’afficher d’abord dans le même ordre.
Une aide pour débutant éclairé
Algorithmique Tableaux de données
Introduction à l’utilitaire
 Chaînage et LSC : motivation et principe Manipuler la LSC : exemples Variantes : LDC, liste circulaire, … Etude de cas : réalisation d’un buffer clavier.
Principes et variables
PhP 2. Tableaux et structures de contrôle. Les tableaux Définition –Rassemblement d’un ensemble de valeurs portant le même nom de variable –Types de tableaux.
ALGORITHME ET PROGRAMMATION RÉVISION Informatique et Sciences du Numérique.
Informatique 2A Langage C 5ème séance. Déroulement de la séance 5 1 ère partie Étude des chaînes de caractères 2 ème partie Les structures 3.
Transcription de la présentation:

Chapitre 2 :Tableaux Pr. Aissam MESRAR Ecole ESIAM

Tableaux Ecole ESIAM

Tableaux Un tableau est une structure qui peut contenir plusieurs valeurs Les données d’un tableau ne sont pas forcément de même type La taille d’un tableau est dynamique 10 bon 12.3 m Ecole ESIAM

Tableaux Deux types de tableaux : Tableaux scalaires : tableaux conventionnels Tableaux associatifs Ecole ESIAM

Tableaux scalaires Les éléments d’un tableau sont référencés par des indices entiers Les indices sont par défaut successifs Le premier indice est 0 Le dernier est : nombre d’éléments – 1 1 2 3 Elem1 Elem2 Elem3 Elem4 Ecole ESIAM

Tableaux scalaires Initialisation Affichage d’un tableau Un tableau est initialisé par la fonction array() $nom_tab = array(val1,val2,val3,…); Exemple : $couleurs=array("rouge","vert","bleu"); Affichage d’un tableau Le tableau peut être affiché en entier par la fonction print_r () print_r($nom_tab); Ecole ESIAM

Tableaux scalaires Accès aux éléments du tableau Un élément du tableau est accédé via son indice $nom_tab[indice] Exemple: $couleurs[2]= "gris"; print($couleurs[0]); $ma_couleur = $couleurs[1]; Ecole ESIAM

Tableaux scalaires Affectation des tableaux A la différence des langages classiques, on peut affecter un tableau à un autre. $tab1 = $tab2; Permet de copier tous les éléments de $tab2 dans $tab1 Ecole ESIAM

Tableaux scalaires Exemple récapitulatif <?php $couleurs=array("rouge","vert","bleu"); print_r($couleurs); print("<br>"); print("première couleur :$couleurs[0] <br>"); $ma_couleur = $couleurs[1]; print("<br> modification de la troisième couleur<br>"); $couleurs[2]="gris"; print("<br><br> couleur préférée : $ma_couleur<BR>"); $copie_tab = $couleurs; print("<BR> affichage de la copie du tableau: >BR>"); print_r($copie_tab); ?> Ecole ESIAM

Tableaux scalaires Ajout d’un élément à la fin du tableau Trois manières : Directement avec son indice $couleurs[3]="orange"; Sans indice $couleurs[]="orange"; Avec la fonction array_push() array_push($couleurs,"blanc"); Ecole ESIAM

Tableaux scalaires Ajout d’un élément au début du tableau Avec la fonction array_unshift() Exemple : array_unshift($couleurs,"noir"); Ecole ESIAM

Tableaux scalaires Exemple récapitulatif <?php $couleurs=array("rouge","vert","bleu"); print_r($couleurs); print("<br> ajout à la fin du tableau<br>"); $couleurs[3]="orange"; $couleurs[]="jaune"; array_push($couleurs,"blanc"); print("<br> ajout au début du tableau <br>"); array_unshift($couleurs,"noir"); ?> Ecole ESIAM

Fonctions de manipulation des tableaux sizeof($tab) et count($tab) Retournent le nombre d’éléments du tableau $taille=count($tab); array_pop($tab) Retourne et supprime le dernier élément du tableau Dépile le tableau $dernier = array_pop($tab); Ecole ESIAM

Fonctions de manipulation des tableaux array_shift($tab) Retourne et supprime le premier élément du tableau Défile le tableau $premier = array_shift($tab); sort($tab) Trie le tableau Voir aussi : asort(), rsort(), arsort(), ksort() Ecole ESIAM

Fonctions de manipulation des tableaux Exemple récapitulatif <?php $couleurs=array("noir","rouge","vert","bleu","orange","jaune"); print_r($couleurs); $dcouleur=array_pop($couleurs); $pcouleur=array_shift($couleurs); print("dernière couleur :$dcouleur <BR>"); print("première couleur :$pcouleur <BR>"); print("Tableau après suppression du premier et dernier éléments : <BR>"); print("<br> tableau trié <br>"); sort($couleurs); ?> Ecole ESIAM

Fonctions de manipulation des tableaux list($var1,$var2,…) = $tab; Range les valeurs des premiers éléments du tableau dans les variables passées en paramètres à la fonction list Le nombre de variables doit être inférieur à la taille du tableau Possibilité de sauter certains éléments list(,$var2) = $tab; Extrait le deuxième élément du tableau Ecole ESIAM

Fonctions de manipulation des tableaux Exemple <?php $couleurs=array("noir","rouge","vert","bleu","orange","jaune"); print_r($couleurs); print("<br> utilisation de list <br>"); print("Extraire la première et deuxième valeurs : <BR>"); list($v1,$v2) = $couleurs; print("$v1:$v2"); print("<BR><BR>Extraire la troisème et quatrième valeurs :<BR>"); list(,,$v3,$v4) = $couleurs; print("$v3:$v4<BR>"); ?> Ecole ESIAM

Fonctions de manipulation des tableaux explode("sep",$chaine); Convertit une chaîne de caractère en un tableau, Le séparateur des éléments dans la chîane est : "sep" $chaine_vers_tab = explode(":","rouge:vert:bleu"); $chaine_vers_tab Rouge Vert bleu Ecole ESIAM

Fonctions de manipulation des tableaux implode("sep",$tab); Convertit un tableau en une chaîne de caractère en insérant le séparateur "sep" entre deux éléments consécutifs $tab_vers_chaine = implode(":",$chaine_vers_tab); Equivalent à $tab_vers_chaine ="rouge:vert:bleu" Ecole ESIAM

Fonctions de manipulation des tableaux Exemple <?php $dateslash="12/03/2006"; print("<br> conversion de chaine en tableau <br>"); $tabdate = explode("/",$dateslash); print_r($tabdate); print("<br> conversion de tableau en chaine <br>"); $datetiret = implode("-",$tabdate); print($datetiret); ?> Ecole ESIAM

Tableaux associatifs cle1 val1 cle2 val2 cle3 val3 Dans un tableau scalaire, chaque élément est référencé implicitement par un indice de type entier Dans un tableau associatif, chaque élément est référencé explicitement par un indice appelé clé de type arbitraire cle1 val1 cle2 val2 cle3 val3 Ecole ESIAM

Tableaux associatifs clé valeur La clé et la valeur correspondante sont séparées par "=>" $tab_ass = array("nom"=>"Dupont","prenom"=>"Michel","section"=>"MSTI"); La clé peut être de type chaîne de caractère clé nom Dupont prenom Michel section MSTI valeur Ecole ESIAM

Tableaux associatifs Dans le même tableau deux clés peuvent être de types différents $tab_ass = array(1=>1278, "nom"=>"Dupont","prenom"=>"Michel") clé 1 1278 nom Dupont prenom Michel valeur Ecole ESIAM

Tableaux associatifs Un tableau scalaire est un cas particulier des tableaux associatifs où toutes les clés sont des entiers Les deux instructions sont équivalentes : $tab_ass_scal = array(0 =>"Dupont",1=>"Michel",2=>"MSTI"); $tab_scal = array("Dupont","Michel","MSTI"); Vérifier avec la fonction print_r() Ecole ESIAM

Tableaux associatifs Accès aux éléments d’un tableau associatif via la clé $tab[cle_element] Exemple $nom_eleve= $eleve["nom"]; $eleve["section"] = "MSTIEEA"; print($eleve["prenom"]); Ecole ESIAM

Tableaux associatifs Insertion à la fin du tableau Directement avec la clé $tab[nouvelle_cle] = nouvelle_valeur; Ecole ESIAM

Tableaux associatifs Fonctions de gestion interne Le dernier élément manipulé est toujours mémorisé (via un pointeur) current($tab) Retourne la valeur du dernier élément manipulé key($tab) Retourne la clé du dernier élément manipulé Ecole ESIAM

Tableaux associatifs Fonctions de gestion interne reset($tab) Positionne le pointeur du tableau sur le premier élément et renvoie sa valeur end($tab) Positionne le pointeur du tableau sur le dernier élément et renvoie sa valeur next($tab) avance le pointeur du tableau de 1 et renvoie la valeur de l’élément suivant prev($tab) recule le pointeur du tableau de 1 et renvoie la valeur de l’élément précédent Ecole ESIAM

Tableaux associatifs Fonctions de gestion interne each($tab) Retourne l’élément courant et avance le pointeur du tableau de 1 L’élément renvoyé est un tableau de 4 éléments Clés : 1, value, 0, key Valeurs associées : 0,key : valeur de la clé 1,value : valeur de l’élément Ecole ESIAM

Tableaux multidimensionnels Un élément de ce tableau peut être également un tableau Exemple $menu = array("entree"=>array("nicoice","mexicaine","variee"), "plat"=>array("poisson","tagine","brochettes"), "dessert"=>array("banane","pomme","orange")); print_r($menu); Ecole ESIAM