INF130 - Ordinateurs et programmation. Semaine 08. Document présenté par Frédérick Henri et conçu par les enseignants en informatique du SEG

Dimension: px
Commencer à balayer dès la page:

Download "INF130 - Ordinateurs et programmation. Semaine 08. Document présenté par Frédérick Henri et conçu par les enseignants en informatique du SEG"

Transcription

1 INF130 - Ordinateurs et programmation Semaine 08 Document présenté par Frédérick Henri et conçu par les enseignants en informatique du SEG

2 Retour sur l'examen intra Objectifs Tableaux à deux dimensions - Déclaration -Accès à un élément Algorithmes sur tableaux - Fouilles - Fouille séquentielle - Fouille dichotomique Algorithmes sur tableaux - Tris - Tri par sélection - Tri par insertion -Tri bulle Objectifs

3 Tableaux (p. 129) Un tableauest une séried'éléments de même nature regroupés sous un seul identificateur. Chaque élément possède un indice permettant d'accéder à son contenu. Illustration d'un tableau Le tableau ci-dessouscontient 5 éléments de type entier. L'indice de chacun des éléments apparaît au-dessus de de dernier La création de ce tableau pourrait se faire ainsi : ' On déclare un tableau de 5 entiers. Dim tableau(1 To 5) As Integer ' On assigne une valeur à chacun des éléments du tableau. tableau(1) = 12 tableau(2) = 45 tableau(3) = 1 tableau(4) = 56 tableau(5) = 9 Rappel

4 Déclaration d'un tableau statique à deux dimensions (p. 136) Les tableaux à taille fixe se déclarent comme suit : Dim nom_du_tableau(taille, [taille],...) As type_de_données où nom_du_tableau: correspond au nom du tableau taille: le nombre d'éléments pour une dimension (où les indices des élémentssi le mot To est utilisé). type_de_données: Le type de donnée de chacun des éléments. EXEMPLES DE TABLEAUX À PLUSIEURS DIMENSIONS ' Tableau à deux dimensions d'entiers. ' L'indiçage dépend de l'instruction Option Base. Dim un_tableau(5, 10) As Integer ' Tableau à deux dimensions d'entiers (5 lignes et 10 colonnes), respectivement ' indicées de 1 à 5 et de 1 à 10. Dim un_tableau(1 To 5, 1 To 10) As Integer ' Tableau à 4 dimensions, 10 x 10 x 10 x 10 pu encore 11 x 11 x 11 x 11 selon ' la présence de l'instruction Option Base. Dim un_tableau(10, 10, 10, 10) As Integer EXEMPLE Pour créer le tableau ci-dessous, nous pourrions écrire le code qui suit Dim un_tableau(1 To 3, 1 To 4) As Integer ' On assigne la valeur 1 à l'élément situé à l'intersection de la ligne 2 et ' de la colonne 1. un_tableau(2, 1) = 1 ' On assigne la valeur 2 à l'élément situé à l'intersection de la ligne 3 et ' de la colonne 4. un_tableau(3, 4) = 2 ' On assigne la valeur 3 à l'élément situé à l'intersection de la ligne 1 et ' de la colonne 2. un_tableau(1, 2) = 3 Déclaration

5 Fonctions LBound et UBound Les fonctions LBound et UBound servent à identifier les indices des bornes d'un tableau : LBound Signifie Lower Bound et retourne l'indice du premier élément d'un tableau. UBound Signifie Upper Bound et retourne l'indice du dernier élément d'un tableau. SYNTAXE - UBound et LBound borne_inférieure = LBound(nom_du_tableau, [dimension à consulter]) borne_supérieure = UBound(nom_du_tableau, [dimension à consulter]) EXEMPLES Option Base 1 ' Indiçage à partir de 1 (dans le haut du module). Public Sub test_bounds() ' Déclaration des variables. Dim tableau_deux(8, 33 To 99) As String Dim tableau_dynamique() As Boolean ' Quelques tests. Call MsgBox(LBound(tableau_deux, 1)) ' Affiche 1. Call MsgBox(UBound(tableau_deux, 1)) ' Affiche 8. Call MsgBox(LBound(tableau_deux, 2)) ' Affiche 33. Call MsgBox(UBound(tableau_deux, 2)) ' Affiche 99. ' Redimension de tableau_dynamique. ReDim tableau_dynamique(1 To 100, 0 To 9) Call MsgBox(LBound(tableau_dynamique, 1)) ' Affiche 1. Call MsgBox(UBound(tableau_dynamique, 1)) ' Affiche 100. Call MsgBox(LBound(tableau_dynamique, 2)) ' Affiche 0. Call MsgBox(UBound(tableau_dynamique, 2)) ' Affiche 9. End Sub Accès

6 Nombre de dimensions d'un tableau Malheureusement, aucune fonctionnalité du langage ne permet d'identifierle nombre de dimensions d'un tableau (Aide et support Microsoft - Article ). La fonction qui suit permet de déterminer le nombre de dimensions d'un tableau. Elle profite du fait que la consultation de la borne inférieure d'une dimension inexistante génère une erreur. Nombre de dimensions d'un tableau ' ' NOMBRE_DE_DIMENSIONS ' ' Cette fonction retourne le nombre de dimensions d'un tableau. ' ' PARAMÈTRES : ' - tableau : (ENTRÉE) Le tableau dont on cherche le nombre de dimensions. ' ' VALEUR DE RETOUR : Le nombre de dimensions du tableau reçu. ' Public Function nombre_de_dimensions(byref tableau() As Integer) As Long Const NB_DIMENSIONS_MAXIMAL As Long = Dim indice_dimension As Long ' Pour itérer sur chacune des dimensions. Dim resultat_lbound As Long ' Reçoit le retour du Lbound. ' En cas d'erreur, on saute à l'étiquette DERNIÈRE_DIMENSION. On Error GoTo DERNIÈRE_DIMENSION ' On consulte la borne inférieure de chaque dimension potentielle. For indice_dimension = 1 To NB_DIMENSIONS_MAXIMAL ' Si la dimension n'existe pas, alors on saute à l'étiquette ' DERNIÈRE_DIMENSION. resultat_lbound = LBound(tableau, indice_dimension) Next indice_dimension DERNIÈRE_DIMENSION: nombre_de_dimensions = indice_dimension - 1 Nombre de dimensions

7 Exercices (p. 155) Écrivez une procédurequi reçoit un tableau à deux dimensions d'entiers ainsi qu'un entier. Elle assigne l'entier reçu à chacun des éléments du tableau. Exemple d'utilisation Dim tableau(1 To 3, 1 To 8) As Integer Call remplir_tableau(tableau, 2) Suite à l'exécution du code ci-dessus, la variable tableau contiendra les valeurs suivantes Écrivez une procédurequi reçoit un tableau à deux dimensions d'entiers et le remplit de la façon suivante (avec des 1 dans la première et la dernière ligne et des 2 partout ailleurs) Exercices 1a

8 Solutions Public Sub remplir_tableau(byref tableau() As Integer, _ ByVal valeur As Integer) Dim ligne As Integer Dim colonne As Integer For ligne = LBound(tableau, 1) To UBound(tableau, 1) For colonne = LBound(tableau, 2) To UBound(tableau, 2) tableau(ligne, colonne) = valeur Next colonne Next ligne End Sub Public Sub remplir_tableau(byref tableau() As Integer) Dim ligne As Integer Dim colonne As Integer For ligne = LBound(tableau, 1) To UBound(tableau, 1) For colonne = LBound(tableau, 2) To UBound(tableau, 2) If (ligne = LBound(tableau, 1) Or _ ligne = UBound(tableau, 1)) Then tableau(ligne, colonne) = 1 Else tableau(ligne, colonne) = 2 End If Next colonne Next ligne End Sub Voici une autrefaçon de réaliser la même tâche. Public Sub remplir_tableau(byref tableau() As Integer) Dim ligne As Integer Dim colonne As Integer ' On remplit la première et la dernière ligne. For colonne = LBound(tableau, 2) To UBound(tableau, 2) tableau(lbound(tableau, 1), colonne) = 1 tableau(ubound(tableau, 1), colonne) = 1 Next colonne ' On remplit toutes les autres lignes. For ligne = LBound(tableau, 1) + 1 To UBound(tableau, 1) - 1 For colonne = LBound(tableau, 2) To UBound(tableau, 2) tableau(ligne, colonne) = 2 Next colonne Next ligne End Sub Solutions 1a

9 Exercices (p. 155) Écrivez une procédurequi reçoit un tableau à deux dimensions d'entiers et le remplit de lafaçon suivante (avec des 0 dans la première ligne, des 1 dans la deuxième, etc.) Écrivez une procédurequi reçoit un tableau à deux dimensions d'entiers et le remplit de la façon suivante Afin de simplifier l'exercice, supposez que l'indice du premier élément de chaque dimension vaut 1. Exercices 1b

10 Solutions ' PREMIÈRE FAÇON : Utiliser une formule utilisant l'indice de la ligne ' et/ou de la colonne. Public Sub remplir_tableau_version1(byref tableau() As Integer) Dim ligne As Integer Dim colonne As Integer For ligne = LBound(tableau, 1) To UBound(tableau, 1) For colonne = LBound(tableau, 2) To UBound(tableau, 2) tableau(ligne, colonne) = ligne - Lbound(tableau, 1) Next colonne Next ligne End Sub ' DEUXIÈME FAÇON : Utiliser une variable conservant la prochaine valeur à ' assigner à un élément. Public Sub remplir_tableau_version2(byref tableau() As Integer) Dim ligne As Integer Dim colonne As Integer Dim valeur_a_assigner As Integer valeur_a_assigner = 0 For ligne = LBound(tableau, 1) To UBound(tableau, 1) For colonne = LBound(tableau, 2) To UBound(tableau, 2) tableau(ligne, colonne) = valeur_a_assigner Next colonne valeur_a_assigner = valeur_a_assigner + 1 Next ligne End Sub ' TROISIÈME FAÇON : Remplir la première ligne et remplir ensuite les ' lignes suivantes en utilisant les lignes précédentes. Public Sub remplir_tableau_version3(byref tableau() As Integer) Dim ligne As Integer Dim colonne As Integer For colonne = LBound(tableau, 2) To UBound(tableau, 2) tableau(lbound(tableau, 1), colonne) = 0 Next colonne For ligne = LBound(tableau, 1) + 1 To UBound(tableau, 1) For colonne = LBound(tableau, 2) To UBound(tableau, 2) tableau(ligne, colonne) = tableau(ligne - 1, colonne) + 1 Next colonne Next ligne Public Sub remplir_tableau(byref tableau() As Integer) Dim ligne As Integer Dim colonne As Integer For ligne = 1 To UBound(tableau, 1) For colonne = 1 To UBound(tableau, 2) If (ligne < colonne) Then tableau(ligne, colonne) = ligne Else tableau(ligne, colonne) = colonne End If Next colonne Next ligne End Sub Solutions 1b

11 Les fouilles L'intérêt de conserver des données est biensûr de pouvoir les consulter ultérieurement. L'action de rechercher une donnée parmi un ensemble de données se nomme une fouille. Comme toujours, Excel nous offre des fonctions nous permettant d'effectuerunefouilledans une plage Excel (la méthodefinddans un objet de la classe Range, la fonction Recherchev, etc.). Malheureusement, ceci n'est pas possible en mémoire (par exemple, lorsque nous travaillons avec des tableaux). Il arrive donc fréquemment que nous ayons à écrire nos propres sous-programmes réalisant une fouille. Il existe deux types de fouilles simples que nous présenterons dans ce classeur : la fouille Fouilles

12 La fouille séquentielle Fonctionnement de la fouille séquentielle Tant que (la valeur n'est pas trouvée Et que le tableau n'a pas été parcouru au complet) avancer au prochain élément Fin pour Il est à noter que... - La fouille séquentielle n'exige pas que les valeurs du tableau soient ordonnées. -S'il y a plusieurs occurrences de la valeur recherchée dans le tableau, la fouille séquentielle retourne la position de la première occurence. -Dans le pire des cas (si la valeur recherchée n'est pas dans le tableau), le nombre d'éléments consultés sera égal au nombre d'éléments dans le tableau. Fouille séquentielle

13 La fouille dichotomique Voici ce à quoi ressemble l'algorithme de la fouille dichotomiquelorsque l'on recherche la valeur valeur_recherchée dans le tableau tableau de n éléments ordonnés : gauche = 1 droite = n Boucle Tant Que (gauche < droite) // On trouve le milieu de la plage de recherche // (notons ici que la division est entière). milieu = (gauche + droite) \ 2 si (tableau(milieu) < valeur_recherchée) Alors gauche = milieu + 1 Sinon droite = milieu Fin Si Fin Boucle Pourtrouver le milieu d'une plage, évitez d'écrire gauche + (droite -gauche) \2. En effet, l'expression (gauche + droite) \ 2, est équivalenteet plus rapide (c'est une moyenne). Si (tableau(gauche) = valeur_recherchée) Alors // L'indice de la valeur cherchée est conservé dans la // variable milieu. Sinon // La valeur recherchée n'est pas dans le tableau. Quelques petites choses à noter : - La fouille dichotomique exige que les valeurs du tableau soient en ordre croissant. -La fouille dichotomique consulte toujours log 2 (n) éléments, où ncorrespond au nombre d'éléments dans le tableau. Ainsi, la fouille dichotomique est BEAUCOUP plus rapide que la fouille séquentielle, mais ne peut être utilisée que sur des données triées! Fouille dichotomique

14 Exercices Écrivez une fonction qui reçoit deux paramètres : un tableau à une dimension d'entiers et unentier. Elle fouille le tableau et retourne l'indice de la première occurrence du nombre dans le tableau. Si le nombre n'est pas dans le tableau, elle retourne l'indice du premier élément du tableau moins 1. Exercices 2

15 Solutions Commençons par une version très simple qui parcourt toujours le tableau au complet. Public Function fouiller_tableau(byref tableau() As Integer, _ ByVal valeur_cherchée As Integer) _ As Integer Dim i As Integer ' Pour parcourir le tableau. ' Au départ, on suppose que la valeur est absente. fouiller_tableau = LBound(tableau) - 1 ' On cherche la première occurence de la valeur. For i = LBound(tableau) To UBound(tableau) If (tableau(i) = valeur_cherchée) Then fouiller_tableau = i End If Next i End Function Pourquoi cette versionne répond-elle pas à nos attentes? Tout d'abord, parce qu'elle ne retourne pas l'indice de la première occurrence de la valeur recherchée, mais celle de la dernière. Une façon simple de corriger le problème consiste à terminer la boucle lorsque la valeur est trouvée. Voici donc une version plus efficace qui répond aux exigences du problème. Public Function fouiller_tableau(byref tableau() As Integer, _ ByVal valeur_cherchée As Integer) _ As Integer Dim i As Integer ' Pour parcourir le tableau. ' Au départ, on suppose que la valeur est absente. fouiller_tableau = LBound(tableau) - 1 ' On cherche la première occurence de la valeur. For i = LBound(tableau) To UBound(tableau) If (tableau(i) = valeur_cherchée) Then fouiller_tableau = i Exit Function End If Next i End Function Il est généralementrecommandé de n'avoir qu'un unique point de sortie dans une fonction. En ajoutant Exit Function, cela en ajoute un second (quand on rentre dans l'instruction conditionnelle et quand on sort de la boucle). L'utilisation d'une boucle Whilepermet de corriger le problème. Public Function fouiller_tableau(byref tableau() As Integer, _ ByVal valeur_cherchée As Integer) _ As Integer Dim i As Integer ' Pour parcourir le tableau. ' Au départ, la valeur n'a pas encore été trouvée. fouiller_tableau = LBound(tableau) - 1 ' On parcourt le tableau tant que l'on est toujours dans le tableau ' et que la valeur recherchée n'est pas trouvée. i = LBound(tableau) While (i <= UBound(tableau) And _ fouiller_tableau = LBound(tableau) - 1) If (tableau(i) = valeur_cherchée) Then fouille_tableau = i Else i = i + 1 End If Wend Solutions 2

16 Les tris Il est impossible de parler de gestion de données sans parler de tris. Imaginez un bottin téléphonique dont les données ne seraient pas triées! En fait, à chaque fois qu'on présente des données, peu importe leur type, on doit les présenter d'une façon ordonnée, à moins de n'avoir que quelques informations à montrer. Pour trier une base de données présentée dans une feuille de calcul Excel avec VBA, on utilise la méthode Sortd'un objet de type Range(voir l'exemplede code qui suit qui n'est offert qu'à titre indicatif). Procédure triant une plage de données ' ' TRIER_PLAGE ' ' Cette procédure trie les données de la plage reçue en ordre croissant. ' Elle suppose que la plage de données ne possède pas d'en-tête. ' ' PARAMÈTRES : ' - plage : La plage de données a trier. ' - feuille : La feuille contenant la plage à trier. ' ' VALEUR DE RETOUR : Aucune. ' ' Exemple d'appel : ' Call trier_plage(range("a1:a10"), ActiveSheet) ' Public Sub trier_plage(byval plage As Range, ByVal feuille As Worksheet) ' On efface l'état du tri. feuille.sort.sortfields.clear ' On ajoute un champs de tri (la clé étant la première colonne). feuille.sort.sortfields.add Key:= plage.cells(1, 1), _ SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal ' On trie la plage. With feuille.sort.setrange plage.header = xlno.matchcase = False.Orientation = xltoptobottom.sortmethod = xlpinyin.apply End With Malheureusement, ceci n'est pas possible en mémoire (par exemple, lorsque nous travaillonsavec des tableaux). Il faut donc écrire du code pour trier des tableaux. Il existe une foule d'algorithmes de tri dans la littérature. Dans ce cours, nous en étudierons trois : o Le tri par sélection; o Le tri bulle; o Le tri par insertion. Tris

17 Le tri par sélection Le fonctionnement du tri par sélection est le suivant : Première passe On cherche l'élément contenant la plus petite valeur du tableau à partir du premier élément. On échange lavaleur de cet élément avec celle du premierélément du tableau. Deuxième passe On cherche l'élément contenant la plus petite valeur du tableau à partir du deuxième élément. On échange lavaleur de cet élément avec celle du deuxièmeélément du tableau.... et ainsi de suite pour chaque élément du tableau jusqu'à l'avant-dernier. Fonctionnement du tri par sélection Pour i = 1 À n - 1 indice_du_minimum = indice du plus petit élément se trouvant entre T(i) et T(n) inclusivement permuter T(i) et T(indice_du_minimum) Fin Boucle Tri par sélection

18 Exercices Écrivez une procédure nommée permuterqui reçoitdeux entiers par référence et qui échange leurs contenus. À l'aide de la fonctionpermuter(ci-dessus) et de la fonction indice_minimum(ci-dessous), écrivez une procédure nommée tri_par_selectionqui reçoit un tableau à une dimension d'entiers et trie les valeurs qui s'y trouvent en ordre croissant à l'aide d'un tri par sélection. Private Function indice_minimum(byref tableau() As Integer, _ ByVal debut As Integer, _ ByVal fin As Integer) As Integer Dim i As Integer ' Pour parcourir le tableau. ' Au départ, on suppose que le premier élément est le plus ' petit. indice_minimum = debut ' On consulte tous les autres éléments du tableau. For i = debut + 1 To fin ' Si cet élément est plus petit que le minimum, il ' devient le nouveau minimum. If (tableau(i) < tableau(indice_minimum)) Then indice_minimum = i End If Next i End Function Exercices 3

19 Solutions Public Sub permuter(byref nb1 As Integer, ByRef nb2 As Integer) Dim tampon As Double ' Une variable servant à conserver ' temporairement la valeur de nb1. tampon = nb1 nb1 = nb2 nb2 = tampon End Sub Public Sub tri_par_selection(byref tableau() As Integer) Dim i As Integer ' Pour trier chacun des éléments. ' On place au bon endroit chacun des éléments du tableau. For i = LBound(tableau) To UBound(tableau) - 1 ' On s'assure que le ième plus petit élément se trouve à ' l'ième position. Call permuter(tableau(i), _ tableau(indice_minimum(tableau, i, _ UBound(tableau)))) Next i End Sub Solutions 3

20 Le tri par insertion Le fonctionnement du tri par insertion est le suivant : Première passe On reculela valeur du deuxièmeélément dans le tableau jusqu'à ce que les valeurs des deux premiers éléments soient ordonnés. Deuxième passe On recule la valeur du troisièmeélément dans le tableau jusqu'à ce que les valeurs destrois premiers éléments soient ordonnés.... et ainsi de suite pour tous les autres éléments du tableau. Fonctionnement du tri par insertion Pour i = 2 À n insérer l'élément T(i) au bon endroit parmi les i-1 éléments déjà triés Fin Pour Public Sub tri_par_insertion(byref tableau() As Integer) Dim element_a_inserer As Integer ' L'indice de l'élément à reculer. ' On insère chaque élément au bon endroit dans le tableau. For element_a_inserer = LBound(tableau) + 1 To UBound(tableau) Call reculer_element(tableau, element_a_inserer) Next element_a_inserer End Sub Private Sub reculer_element(byref tableau() As Integer, _ ByVal indice As Integer) Dim copie As Integer ' Pour copier l'élément à reculer. Dim element_a_copier As Integer ' Indice de l'élément à copier. Dim fin_copie_a_droite As Boolean ' True lorsqu'il n'y a plus de ' valeurs à décaler. ' On fait une copie de la valeur à reculer. copie = tableau(indice) ' Tant qu'il reste une valeur qui doit être copiée, on la copie ' dans l'élément à droite et on passe au prochain élément à gauche. element_a_copier = indice - 1 While (Not fin_copie_a_droite) ' Si l'on ne se trouve plus dans le tableau, alors les copies ' sont terminées. If (element_a_copier < LBound(tableau)) Then fin_copie_a_droite = True ' Si la valeur de l'élément courant est plus petite que la ' valeur à reculer, alors les copies sont terminées. ElseIf (tableau(element_a_copier) <= copie) Then fin_copie_a_droite = True ' Sinon, on copie la valeur de l'élément courant et on passe au ' prochain élément à gauche. Else ' On copie la valeur courante d'un élément vers la droite. tableau(element_a_copier + 1) = tableau(element_a_copier) element_a_copier = element_a_copier - 1 End If Wend ' On écrit l'élément à reculer au bon endroit. tableau(element_a_copier + 1) = copie End Sub Tri par insertion

21 L'algorithme du tri bulleest le suivant : Le tri bulle Première passe On part du dernierélément du tableau jusqu'au deuxièmeet on compare la valeur de chaque élément avec celle de l'élément précédent. Si la valeur de l'élément de droite est plus petite que celle de celuide gauche, on échange les deux valeurs. Deuxième passe On part du dernier élément du tableau jusqu'au troisième et on compare la valeur de chaque élément avec celle de l'élément précédent. Si la valeur de l'élément de droite est plus petite que celle de celuide gauche, on échange les deux valeurs.... et ainsi de suite jusqu'à ce qu'on parte du dernier élément jusqu'à l'avant-dernier. Notons que le tri bulle est extrêmement lent et ne devrait jamais être utilisé! Fonctionnement du tri bulle Pour i = 1 À n-1 Pour j = n À i + 1 Si (T(j) < T(j - 1)) Alors permuter T(j) et T(j - 1) Fin Si Fin Boucle Fin Boucle Tri bulle

22 Exercices On retrouve ci-dessous l'étatd'un tableau suite aux trois premières passes de trois tris différents. Identifiez le tri utilisé dans chacun des cas. Premier tri Départ : Passe 1 : Passe 2 : Passe 3 : Deuxième tri Départ : Passe 1 : Passe 2 : Passe 3 : Troisième tri Départ : Passe 1 : Passe 2 : Passe 3 : Exercices 4

23 Solutions 1) Tri par sélection. 2) Tri bulles. 3) Tri par insertion. Solutions 4

24 Conclusion Nous savons maintenant comment conserverdes données d'un même type se rapportant généralement à des entités distinctes (par exemple, les notes de différents étudiants). Mais comment ferait-on pour conserver des données de types différents décrivant une seule entité (par exemple, les informations sur un étudiant)? C'est ce que nous verrons au cours des prochaines semaines. -Lire le chapitre 8 du livre. - Avancer le travail pratique numéro II. À faire cette semaine - Tableaux à deux dimensions; - Fouilles séquentielle et dichotomique; -Tris : par sélection, par insertion et bulles. Notions importantes vues cette semaine Conclusion

Programmation C++ (débutant)/les tableaux statiques

Programmation C++ (débutant)/les tableaux statiques Programmation C++ (débutant)/les tableaux statiques 1 Programmation C++ (débutant)/les tableaux statiques Le cours du chapitre 6 : les tableaux statiques Les tableaux Une variable entière de type int ne

Plus en détail

Programmation en VBA

Programmation en VBA Programmation en VBA Présentation de Visual Basic Visual Basic : Basic : dérivé du langage Basic (Biginner s All purpose Symbolic Instruction Code) des années 60 Visual : dessin et aperçu de l interface

Plus en détail

Visual Basic pour Applications

Visual Basic pour Applications Visual Basic pour Applications Les concepts de base de la programmation, 2ème partie Romain Tavenard Kévin Huguenin Christophe Avenel Romain.Tavenard@irisa.fr Kevin.Huguenin@gmail.com Christophe.Avenel@irisa.fr

Plus en détail

Petite gestion des stocks

Petite gestion des stocks Petite gestion des stocks Comment quelques macros et du code VBA facilitent la gestion des données dans des feuilles de calcul Excel Vous avez demandé à quelques étudiants de BTS de gérer le stock des

Plus en détail

Analyse de la complexité algorithmique (1)

Analyse de la complexité algorithmique (1) Analyse de la complexité algorithmique (1) L analyse de la complexité telle que nous l avons vue jusqu à présent nous a essentiellement servi à déterminer si un problème est ou non facile (i.e. soluble

Plus en détail

Master 1 Sciences du Sport et du Mouvement Humain

Master 1 Sciences du Sport et du Mouvement Humain Master 1 Sciences du Sport et du Mouvement Humain UE MET1 Méthodologie de la recherche en sciences de la vie et du comportement TP : initiation à la programmation en Visual Basic pour Excel B. Thon 1 introduction

Plus en détail

Programmation VBA. Identificateurs. Types de base. Déclaration d une variable. Commentaires. Activer l onglet Développeur (Excel)

Programmation VBA. Identificateurs. Types de base. Déclaration d une variable. Commentaires. Activer l onglet Développeur (Excel) Activer l onglet Développeur (Excel) Programmation VBA Michel Reid Cliquez sur le bouton Office (coin supérieur gauche) Cliquez sur le bouton Options Excel Dans la section Standard, cochez la case Afficher

Plus en détail

Programmation en VBA

Programmation en VBA Programmation en VBA Présentation de Visual Basic Visual Basic : Basic : dérivé du langage Basic (Biginner s All purpose Symbolic Instruction Code) des années 60 Visual : dessin et aperçu de l interface

Plus en détail

Norme de programmation pour le cours et les travaux pratiques

Norme de programmation pour le cours et les travaux pratiques Université du Québec École de technologie supérieure Service des enseignements généraux www.seg.etsmtl.ca INF130 Ordinateurs et programmation Norme de programmation pour le cours et les travaux pratiques

Plus en détail

Les types utilisateurs (VBA) Corrigé

Les types utilisateurs (VBA) Corrigé PAD INPT ALGORITHMIQUE ET PROGRAMMATION 1 Cours VBA, Semaine 2 avril mai 2013 Corrigé Résumé Ce document décrit comment traduire en VBA les types utilisateur du langage algorithmique. Table des matières

Plus en détail

Solution : Le principe est le suivant : on crée un tableau distribution. Ce tableau associe à indice, distribution(indice) qui

Solution : Le principe est le suivant : on crée un tableau distribution. Ce tableau associe à indice, distribution(indice) qui CORRECTION DES EXERCICES TYPES Calcul d'une distribution de probabiltiés Problème : à partir d'une série de valeurs, on veut obtenir le nombre de valeurs par intervalle pour différentes tailles d'intervalle.

Plus en détail

Excel 2002 VBA Programmation

Excel 2002 VBA Programmation Excel 2002 VBA Programmation SOMMAIRE Structures conditionnelles... 3 A) L'instruction If... 3 B) L'instruction If Then Else... 3 C) L'instruction If Then Elseif... 4 D) L'instruction Select Case... 4

Plus en détail

Quelques notions d'algorithmique

Quelques notions d'algorithmique Quelques notions d'algorithmique I- Généralités Un algorithme est une suite finie d'instructions permettant la résolution systématique d'un problème donné. Un algorithme peut-être décrit en langage «naturel»,

Plus en détail

CRÉER DES PROCÉDURES FUNCTION

CRÉER DES PROCÉDURES FUNCTION 1 CRÉER DES PROCÉDURES FUNCTION Dans ce chapitre La différence entre les procédures Sub et Function Comment créer des fonctions personnalisées? À propos des fonctions et des arguments Quelques exemples

Plus en détail

Plan MODULE INF112. Algorithmique & Programmation. Algorithme vs Programme. Informatique INF112. UJF : L1- L2 / Année 2007-2008 1

Plan MODULE INF112. Algorithmique & Programmation. Algorithme vs Programme. Informatique INF112. UJF : L1- L2 / Année 2007-2008 1 Plan MODULE INF112 TD 3 2007 2008 Algorithme vs Programme Définition d une macro-commande La fenêtre graphique Introduction à l algorithmique Exercices 1 2 Algorithmique & Programmation Problème complexe

Plus en détail

Algorithmique et Structures de Données

Algorithmique et Structures de Données 1.1 Algorithmique et Structures de Données Jean-Charles Régin Licence Informatique 2ème année 1.2 Itérations Jean-Charles Régin Licence Informatique 2ème année Itération : définition 3 En informatique,

Plus en détail

INF-130 Travail pratique #2 Travail en équipe

INF-130 Travail pratique #2 Travail en équipe École de technologie supérieure INF-130 Travail pratique #2 Travail en équipe Prospection et exploration minière Par : Frédérick Henri Utilisé par : David Beaulieu, Frédérick Henri, Hugues Saulnier et

Plus en détail

INF-130 Travail Pratique #2

INF-130 Travail Pratique #2 École de technologie supérieure INF-30 Travail Pratique #2 Travail individuel Tracé d un métro Francis Bourdeau, Frédérick Henri et Patrick Salois Remise à la 0 e semaine. Objectifs - Amener l étudiant

Plus en détail

Complément C7 Infodauphine.com

Complément C7 Infodauphine.com Complément C7 Infodauphine.com Pourquoi se soucier des performances? L'utilisateur n'aime pas attendre Le timing peut-être critique Trading VBA est un outil de productivité La notion de temps d'exécution

Plus en détail

Contrôler les programmes VBA

Contrôler les programmes VBA 7 Contrôler les programmes VBA Au sommaire de ce chapitre Utiliser les opérateurs logiques Trier des données Répéter une série d instructions : les boucles Utiliser des instructions conditionnelles Définir

Plus en détail

Création d'un logiciel de comptabilité générale

Création d'un logiciel de comptabilité générale Création d'un logiciel de comptabilité générale Description du thème Propriétés Intitulé long Date de publication Présentation Description Développement d'un logiciel de comptabilité générale avec Access

Plus en détail

THE CALLAN PERIODIC TABLE OF INVESTMENT RETURNS

THE CALLAN PERIODIC TABLE OF INVESTMENT RETURNS THE CALLAN PERIODIC TABLE OF INVESTMENT RETURNS ANNUAL RETURNS FOR SHARES (2000 2007) 1 Mallika Gillieron Sommaire 1. Introduction... 2 1.1 Définition de Visual Basic... 2... 1.2 Objectif du projet...

Plus en détail

Devoir Surveillé informatique MP, PC, PSI

Devoir Surveillé informatique MP, PC, PSI NOM : Classe : Devoir Surveillé informatique MP, PC, PSI L utilisation des calculatrices n est pas autorisée pour cette épreuve. Le langage de programmation choisi est Python. L espace laissé pour les

Plus en détail

Application 1- VBA : Test de comportements d'investissements

Application 1- VBA : Test de comportements d'investissements Application 1- VBA : Test de comportements d'investissements Notions mobilisées Chapitres 1 à 5 du cours - Exemple de récupération de cours en ligne 1ère approche des objets (feuilles et classeurs). Corps

Plus en détail

Université Paris 1 Panthéon Sorbonne UFR 06. Fiche de TD VBA

Université Paris 1 Panthéon Sorbonne UFR 06. Fiche de TD VBA 1 / 13 Fiche de TD VBA L objectif de cette fiche est de faire un rappel (voire une présentation rapide) du langage de programmation VBA et de son usage sur des documents Excel et Access. Pour rappel, VBA

Plus en détail

Option Explicit Type Voiture Immatriculation As String Année As Integer Marque As String Modèle As String Prix As Double End Type Sub saisie()

Option Explicit Type Voiture Immatriculation As String Année As Integer Marque As String Modèle As String Prix As Double End Type Sub saisie() Option Explicit Type Voiture Immatriculation As String Année As Integer Marque As String Modèle As String Prix As uble End Type Sub saisie() Dim nombre As Integer Dim LesVoitures() As Voiture ReDim LesVoitures(5)

Plus en détail

1 TD 3 : Construction d'une présentation à partir de photos

1 TD 3 : Construction d'une présentation à partir de photos 1 TD 3 : Construction d'une présentation à partir de photos (correction page??) Après un long séjour en vacances et une grande moisson de photos numériques, un baroudeur souhaite présenter quelques extraits

Plus en détail

Ressources pour le lycée technologique

Ressources pour le lycée technologique éduscol Enseignement de mathématiques Classe de première STMG Ressources pour le lycée technologique Échantillonnage : couleur des yeux au Canada Contexte pédagogique Objectifs Obtenir un intervalle de

Plus en détail

Algorithmique et programmation. Cours d'algorithmique illustré par des exemples pour le picbasic

Algorithmique et programmation. Cours d'algorithmique illustré par des exemples pour le picbasic Algorithmique et programmation Cours d'algorithmique illustré par des exemples pour le picbasic Même s'il est possible d'écrire un programme petit à petit par touches successives, le résultat est souvent

Plus en détail

LES PROCÉDURES ET LES FONCTIONS

LES PROCÉDURES ET LES FONCTIONS LES PROCÉDURES ET LES FONCTIONS 165 LES PROCÉDURES ET LES FONCTIONS CHAPITRE 7 OBJECTIFS EXPOSER LE PRINCIPE DE LA DÉCOMPOSITION DES PROGRAMMES DANS LE LANGAGE PASCAL. PRÉCISER LE RÔLE ET L UTILITÉ DES

Plus en détail

Que faire en algorithmique en classe de seconde? ElHassan FADILI Lycée Salvador Allende

Que faire en algorithmique en classe de seconde? ElHassan FADILI Lycée Salvador Allende Que faire en algorithmique en classe de seconde? BEGIN Que dit le programme? Algorithmique (objectifs pour le lycée) La démarche algorithmique est, depuis les origines, une composante essentielle de l

Plus en détail

introduction SQL 10 séances de 4h Licence Pro IRSII 2009-2010

introduction SQL 10 séances de 4h Licence Pro IRSII 2009-2010 introduction SQL 10 séances de 4h Licence Pro IRSII 2009-2010 Support proposé par C. Dabancourt, inspiré aussi par des exemples et tutoriaux Internet PHP SEANCE N 1 INTRODUCTION... 2 EXERCICE N 1 : PRINCIPE

Plus en détail

Applications des maths

Applications des maths Applications des maths Série de Taylor Exercices préalables Exercice a) On considère le polynôme p(x) = x 4 + x 3 + x + x +. Déterminer la valeur de p(0), p'(0), p''(0), p'''(0), p (4) (0), p (5) (0),

Plus en détail

Formulaires. Fiches de savoir associées. C.0.a., C.0.b., C.0.c., C.2.1.a., C.2.1.b. et C.2.3.a.

Formulaires. Fiches de savoir associées. C.0.a., C.0.b., C.0.c., C.2.1.a., C.2.1.b. et C.2.3.a. Activité 10 Formulaires Objectif Travailler sur des formulaires : observer le code et modifier l interface (IHM) de l application. Ressource à utiliser Base de données Formation appformation.mdb Fiches

Plus en détail

Visual Basic pour Applications

Visual Basic pour Applications Visual Basic pour Applications La notion d objet Romain Tavenard Kévin Huguenin Christophe Avenel Romain.Tavenard@irisa.fr Kevin.Huguenin@gmail.com Christophe.Avenel@irisa.fr 25 Septembre 2008 R. Tavenard

Plus en détail

Contrôler les programmes VBA

Contrôler les programmes VBA 7 Contrôler les programmes VBA Au sommaire de ce chapitre Répéter une série d instructions : les boucles Utiliser des instructions conditionnelles Définir l instruction suivante avec GoTo Interagir avec

Plus en détail

Recherche dans un tableau

Recherche dans un tableau Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6

Plus en détail

Remarques sur le premier contrôle de TD :

Remarques sur le premier contrôle de TD : Remarques sur le premier contrôle de TD : Démêlons les confusions en tous genres... Licence 1 MASS semestre 2, 2006/2007 La première remarque est qu il faut apprendre le cours, faire les exercices et poser

Plus en détail

.NET - Classe de Log

.NET - Classe de Log .NET - Classe de Log Classe permettant de Logger des données Text Dans tous les projets, il est indispensable de pouvoir stocker de l'information textuelle : Pour le suivi des erreurs Pour le suivi de

Plus en détail

EXONET Location de véhicules

EXONET Location de véhicules EXONET Location de véhicules Description du thème Propriétés Intitulé long Formation concernée Matière Présentation Notions Description Évaluation des connaissances en Systèmes d information à l issue

Plus en détail

3 - Boucles for et Séquences (range, listes, chaînes de caractères)

3 - Boucles for et Séquences (range, listes, chaînes de caractères) 3 - Boucles for et Séquences (range, listes, chaînes de caractères) Exercices et programmes à rendre dans le compte-rendu de TP : ex 1 (TP3_1), ex 2 (TP3_2), ex 3 (TP3_3), ex 5 (TP3_5), ex 6 (TP3_6), ex

Plus en détail

Mise en œuvre du langage PL.SQL

Mise en œuvre du langage PL.SQL Mise en œuvre du langage PL.SQL Il est possible avec RCITools Oracle/Excel de soumettre des ordres PL.SQL. L utilisation conjointe de cette possibilité avec celle de lire et d écrire très facilement des

Plus en détail

Formation VBA. Grâce au VBA il est possible de réaliser à peu près tout ce que l'on souhaite avec Excel...

Formation VBA. Grâce au VBA il est possible de réaliser à peu près tout ce que l'on souhaite avec Excel... Formation VBA Table des matières Introduction... 1 Les macros... 2 Sélections de colonnes... 4 Propriétés... 6 Les couleurs... 7 Les variables... 9 Introduction Le VBA (Visual Basic for Applications) est

Plus en détail

Tableau d'enregistrements

Tableau d'enregistrements Tableau d'enregistrements Regrouper plusieurs enregistrements dans un tableau est parfaitement possible! Exemple : représenter les données concernant 50 personnes algorithme monalgorithme // déclaration

Plus en détail

ACTIVATION DES MACROS

ACTIVATION DES MACROS ACTIVATION DES MACROS Il faut d abord activer les macros dans Excel. Cela permet d afficher le menu développeur et d avoir accès à la page de programmation Visual Basic. Accès au menu développeur : Fichier

Plus en détail

Architecture des Systèmes d Information Architecture des Systèmes d Information

Architecture des Systèmes d Information Architecture des Systèmes d Information Plan... Tableaux et tris I3 - Algorithmique et programmation 1 Rappels Nicol Delestre 2 Tableaux à n dimensions 3 Initiation aux tris Tableaux - v2.0.1 1 / 27 Tableaux - v2.0.1 2 / 27 Rappels : tableau

Plus en détail

Module 26 : Techniques de modélisation

Module 26 : Techniques de modélisation Module 26 : Techniques de modélisation 26.0 Introduction Ce module enseigne une série de techniques qui constituent une trousse à outils bien pratique quand il s agit de construire des modèles dans Excel

Plus en détail

Base de données. Ensuite, on peut utiliser les fonctions length et setlength pour respectivement lire et changer la taille du tableau.

Base de données. Ensuite, on peut utiliser les fonctions length et setlength pour respectivement lire et changer la taille du tableau. Base de données Nouvelles notions Voici quelques nouvelles fonctionnalités du langage dont vous aurez à vous servir. Prenez le temps de bien comprendre et tester les exemples. Tableaux à taille dynamique

Plus en détail

Codage de l'information. 01000011 01101111 01100100 01100001 01100111 01100101, ce qui donne un découpage de 8 sextets

Codage de l'information. 01000011 01101111 01100100 01100001 01100111 01100101, ce qui donne un découpage de 8 sextets Univ. Lille 1 - Licence Informatique 2ème année 2013-2014 Objectifs du TP Codage de l'information TP : Le codage Base 64 Ce TP a pour but 1. de convertir des chiers quelconques en un chier texte codé en

Plus en détail

if (condition) et ==,!=, <, > (opérateurs logiques de comparaison)

if (condition) et ==,!=, <, > (opérateurs logiques de comparaison) if (condition) et ==,!=, (opérateurs logiques de comparaison) L'instruction if ("si" en français), utilisée avec un opérateur logique de comparaison, permet de tester si une condition est vraie, par

Plus en détail

EXCEL PERFECTIONNEMENT CALCULS AVANCES

EXCEL PERFECTIONNEMENT CALCULS AVANCES TABLE DES MATIÈRES FORMATS... 2 Formats personnalisés... 2 ADRESSAGE DE CELLULES... 3 relatif & absolu Rappel... 3 Adressage par nom... 4 Valider avec la touche Entrée... 4 FONCTIONS SI-ET-OU... 6 LA FONCTION

Plus en détail

Compte-rendu de projet de Cryptographie

Compte-rendu de projet de Cryptographie Compte-rendu de projet de Cryptographie Chirement/Déchirement de texte, d'images de sons et de vidéos LAMBERT VELLER Sylvain M1 STIC Université de Bourgogne 2010-2011 Reponsable : Mr Pallo Table des matières

Plus en détail

Aperçu général de Visual Basic

Aperçu général de Visual Basic Aperçu général de Visual Basic Introduction intuitive à travers trois exemples (cf. TPs) Le programme bonjour Minimum de deux nombres Résolution d une «équation du premier degré». Principes de bases Programmation

Plus en détail

CHAPITRE 3 : Types de base, Opérateurs et Expressions

CHAPITRE 3 : Types de base, Opérateurs et Expressions CHAPITRE 3 : Types de base, Opérateurs et Expressions 1. Types simples Un type définit l'ensemble des valeurs que peut prendre une variable, le nombre d'octets à réserver en mémoire et les opérateurs que

Plus en détail

Haute École de Gestion 05/10/2007. au cours Programmation en VBA Excel. Faisons connaissance. Etudiants se présentent

Haute École de Gestion 05/10/2007. au cours Programmation en VBA Excel. Faisons connaissance. Etudiants se présentent Bienvenue au cours en Excel Faisons connaissance Etudiants se présentent Nom, Prénom Avez-vous déjà fait des macros Excel? Avec-vous déjà programmé avec Excel? Avez-vous déjà programmé avec d'autres langages

Plus en détail

Correction langage Java

Correction langage Java MINISTÈRE DE L ÉCOLOGIE, DU DÉVELOPPEMENT DURABLE, DES TRANSPORTS ET DU LOGEMENT EXAMEN PROFESSIONNEL DE VÉRIFICATION D APTIDUDE AUX FONCTIONS DE PROGRAMMEUR Session 2010 Correction langage Java Langage:

Plus en détail

Un exemple d'utilisation des fichiers texte en Ada.

Un exemple d'utilisation des fichiers texte en Ada. Un exemple d'utilisation des fichiers texte en Ada. Le programme suivant a pour objet de lire des tableaux 2D de caractères dont le contenu a été mémorisé dans des fichiers texte (lisibles et modifiables

Plus en détail

LE FICHIER-TEXTE : UN FICHIER UTILE À LA PROGRAMMATION EN LINGUISTIQUE

LE FICHIER-TEXTE : UN FICHIER UTILE À LA PROGRAMMATION EN LINGUISTIQUE 187 À LA PROGRAMMATION EN LINGUISTIQUE (application à la langue allemande) Matériel utilisé : macintosh plus Langage de programmation : turbo-pascal de borland 1) PROGRAMMATION LINGUISTIQUE ET FICHIERS

Plus en détail

Période 3 Les tableaux

Période 3 Les tableaux Département Génie Électrique et Informatique Industrielle Période 3 Les tableaux 1/ Recopie de certains éléments d un tableau Soit les déclarations suivantes : int Tabint[10]={65,21, 9,23, 1,32,5, 69,12,

Plus en détail

SUJET + CORRIGE. Avertissement

SUJET + CORRIGE. Avertissement Année : 2012/2013 Semestre 2 DEVUIP Service scolarité PARCOURS : Licence LIMI201 & LIMI211 UE J1MI2013 : Algorithmes et Programmes Épreuve : Devoir Surveillé Terminal Date : Lundi 10 juin 2013 Heure :

Plus en détail

Apprendre la dichotomie avec Colobot

Apprendre la dichotomie avec Colobot Apprendre la dichotomie avec Colobot CHABALIER Nicolas MONCEL Arnaud Année Universitaire 2014 2015 1 Apprendre la dichotomie avec Colobot Présenté par CHABALIER Nicolas et MONCEL Arnaud Tuteur : Jacques

Plus en détail

Algorithme et Programmation

Algorithme et Programmation Année universitaire 2009-2010 Algorithme et Programmation Sujets des Travaux Dirigés et des Travaux pratiques 2 ème année INSA MIC 2 ème année INSA MIC Année universitaire 2009-2010 Algorithme et Programmation

Plus en détail

INÉQUATIONS. Notations Inéquations Représentations graphiques 1 ]a ; b[ a < x < b

INÉQUATIONS. Notations Inéquations Représentations graphiques 1 ]a ; b[ a < x < b 27 5. Inéquations 5.1. Définition Exemple : x < 4 + 2x La droite réelle Le symbole utilisé pour les intervalles infinis est une notation et ne représente pas un nombre réel. Une inéquation affirme que

Plus en détail

MICROSOFT EXCEL INITIATION AUX MACROS EXL004-09. 1 - Créer une fiche individuelle à partir d'une liste de noms

MICROSOFT EXCEL INITIATION AUX MACROS EXL004-09. 1 - Créer une fiche individuelle à partir d'une liste de noms Exemples commentés 1 - Créer une fiche individuelle à partir d'une liste de noms Objectif : à partir d'un fichier contenant une liste de noms et d'adresses, créer une fiche individuelle pour la personne

Plus en détail

Licence E.E.A. TD N 2 de Langage C/C++

Licence E.E.A. TD N 2 de Langage C/C++ TD N 2 de Langage C/C++ 1 Licence E.E.A. TD N 2 de Langage C/C++ Ce TD a pour objectif de vous faire découvrir et utiliser le langage C et peut être C++. Il s agira de transcrire sous la forme d un programme

Plus en détail

Programmation Objet - Cours II

Programmation Objet - Cours II Programmation Objet - Cours II - Exercices - Page 1 Programmation Objet - Cours II Exercices Auteur : E.Thirion - Dernière mise à jour : 05/07/2015 Les exercices suivants sont en majorité des projets à

Plus en détail

Chapitre 23 : Pour aller plus loin

Chapitre 23 : Pour aller plus loin 1 Chapitre 23 : Pour aller plus loin Table des matières 1.1. Créer ses propres interfaces graphiques (section 23.4)... 1 Rafraîchir automatiquement les éléments d'une interface graphique... 1 Cet extrait

Plus en détail

Travail pratique # 3 Ce travail peut être fait en équipe d'au plus deux personnes.

Travail pratique # 3 Ce travail peut être fait en équipe d'au plus deux personnes. INF1110 But Travail pratique # 3 Ce travail peut être fait en équipe d'au plus deux personnes. H04 Le but de ce travail est de vous faire utiliser les exceptions, les articles, les tableaux et les fichiers.

Plus en détail

Tutoriel : AccÄs Å un Service Web (GoogleSearch API) avec Visual Basic.Net 2003. Table des matiäres

Tutoriel : AccÄs Å un Service Web (GoogleSearch API) avec Visual Basic.Net 2003. Table des matiäres Tutoriel : AccÄs Å un Service Web (GoogleSearch API) avec Visual Basic.Net 2003 Table des matiäres INTRODUCTION 2 QU EST-CE QU UN SERVICE WEB??? 2 LES PRELIMINAIRES 2 LE DESIGN DE LA FICHE DE RECHERCHE

Plus en détail

Les Fichiers en Pascal

Les Fichiers en Pascal Les Fichiers en Pascal Université de Toulouse II DEUG MASS Année 2004-2005 Patricia PASCAL < ppascal@laas.fr > - Page 1 / 31 - Plan du cours sur les fichiers les fichiers, pourquoi, comment? (p3) les différents

Plus en détail

Série 9: Intérêt des fonctions, portée des variables, variables statiques Buts

Série 9: Intérêt des fonctions, portée des variables, variables statiques Buts Série 9: Intérêt des fonctions, portée des variables, variables statiques Buts - La notion de fonction est fondamentale car elle permet d'atteindre deux objectifs: principe d'abstraction: offrir une vue

Plus en détail

RAPPORT DE CONCEPTION «Les Shadoks font le grand nettoyage!» - Transport Optimal sur la planète Shadokienne- Projet d informatique & physique -

RAPPORT DE CONCEPTION «Les Shadoks font le grand nettoyage!» - Transport Optimal sur la planète Shadokienne- Projet d informatique & physique - Nidavary Somsanith François Barety Sophia Lazraq Claire Marion* EURINSA Année 2012-2013 RAPPORT DE CONCEPTION «Les Shadoks font le grand nettoyage!» - Transport Optimal sur la planète Shadokienne- Projet

Plus en détail

Probabilités et statistique avec Excel. Nicolas MARIE

Probabilités et statistique avec Excel. Nicolas MARIE Probabilités et statistique avec Excel Nicolas MARIE Table des matières I Fonctions de base d Excel............................. 2 I.A Fonctions graphiques............................ 2 I.B Fonctions de

Plus en détail

Cours Visual Basic URCA

Cours Visual Basic URCA Cours Visual Basic URCA Sommaire Introduction à la programmation VBA et VB Syntaxe de base, variables Opérateurs de base, boucles Introduction à la programmation Qu est-ce que la programmation? Séquences

Plus en détail

Sub CalculAnnuite() Const TITRE As String = "Calcul d'annuité de remboursement d'un emprunt"

Sub CalculAnnuite() Const TITRE As String = Calcul d'annuité de remboursement d'un emprunt TD1 : traduction en Visual BASIC des exemples du cours sur les structures de contrôle de l'exécution page 1 'TRADUCTION EN VBA DES EXEMPLES ALGORITHMIQUES SUR LES STRUCTURES 'DE CONTROLE DE L'EXECUTION

Plus en détail

Rappels rapides. La logique algorithmique

Rappels rapides. La logique algorithmique Rappels rapides Les grands axes de la rénovation (cf document joint) Le programme complet des classes de première de la série Sciences et technologies de la gestion Spécialité «Gestion» et Spécialité «Communication»

Plus en détail

IN 101 - Cours 05. 7 octobre 2011. Un problème concret Recherche de collisions

IN 101 - Cours 05. 7 octobre 2011. Un problème concret Recherche de collisions Un problème concret Recherche de collisions IN 101 - Cours 05 7 octobre 2011 Le paradoxe des anniversaires dit que 365 élèves sont suffisants (en moyenne) pour avoir une collision d anniversaire, deux

Plus en détail

Fiches méthode SOMMAIRE

Fiches méthode SOMMAIRE Fiches méthode Tableur (LibreOffice) SOMMAIRE 1. Saisir une formule dans une cellule page 2 2. Recopier une formule sur plusieurs cellules page 2 3. Créer une liste de nombres page 5 4. Trier une liste

Plus en détail

NERIANE GESTION DOCUMENTAIRE

NERIANE GESTION DOCUMENTAIRE NERIANE GESTION DOCUMENTAIRE Le logiciel Nériane Gestion Documentaire est un logiciel offrant différents outils pour gérer des documents. Il est disponible en deux versions différentes : - Une version

Plus en détail

Ch. 1 : Bases de programmation en Visual Basic

Ch. 1 : Bases de programmation en Visual Basic Ch. 1 : Bases de programmation en Visual Basic 1 1 Variables 1.1 Définition Les variables permettent de stocker en mémoire des données. Elles sont représentées par des lettres ou des groupements de lettres

Plus en détail

Trier des tableaux en C++ : efficacité du std::sort (STL) et tris paramétrés

Trier des tableaux en C++ : efficacité du std::sort (STL) et tris paramétrés Trier des tableaux en C++ : efficacité du std::sort (STL) et tris paramétrés Hélène Toussaint, juillet 2014 Sommaire 1. Efficacité du std::sort... 1 1.1. Conditions expérimentales... 1 1.2. Tableaux de

Plus en détail

Manuel utilisateur de l'outil de RoadMAp INterne (ROMAIN)

Manuel utilisateur de l'outil de RoadMAp INterne (ROMAIN) 1. Présentation de l'outil 1.1. Généralités Manuel utilisateur de l'outil de RoadMAp INterne (ROMAIN) 1.1.1. Principes Ce fichier est un outil permettant de présenter de manière simple et graphique le

Plus en détail

Ce jeux sera réalisé en PHP, avec une exécution en local.

Ce jeux sera réalisé en PHP, avec une exécution en local. TP PHP Réalisons une plateforme de 3 jeux Le premier consiste à faire deviner un chiffre à l'utilisateur. Le temps qui s'écoule fait perdre des points. Le deuxième est un jeu de roulette, il faut miser

Plus en détail

AUTOMATISER SES TÂCHES AVEC LES MACROS

AUTOMATISER SES TÂCHES AVEC LES MACROS AUTOMATISER SES TÂCHES AVEC LES MACROS U ne macro est un ensemble de commandes qui s exécute autant de fois que nécessaire simplement en les appelant par son nom. Les macros permettent d automatiser les

Plus en détail

Fiche de révisions - Algorithmique

Fiche de révisions - Algorithmique Fiche de révisions - Algorithmique Rédigé par : Jimmy Paquereau 1. Généralités Algorithme : un algorithme est la description d une procédure à suivre afin de résoudre un problème donné. Il n est pas nécessairement

Plus en détail

1. Ouvrir l éditeur de VBA et ajouter un module

1. Ouvrir l éditeur de VBA et ajouter un module On peut programmer avec VBA des fonctions et des procédures. Une fonction pourra être utilisée comme la fonction Somme, et une procédure pourra devenir une macro. 1. Ouvrir l éditeur de VBA et ajouter

Plus en détail

Info0101 Intro. à l'algorithmique et à la programmation. Cours 5. Tableaux

Info0101 Intro. à l'algorithmique et à la programmation. Cours 5. Tableaux Info0101 Intro. à l'algorithmique et à la programmation Cours 5 Tableaux Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique

Plus en détail

EXCEL PERFECTIONNEMENT CALCULS AVANCES

EXCEL PERFECTIONNEMENT CALCULS AVANCES TABLE DES MATIÈRES TABLE DES MATIÈRES... 1 CONVENTIONS UTILISÉES... 2 FORMATS... 3 Formats personnalisés... 3 ADRESSAGE DE CELLULES... 4 relatif & absolu Rappel... 4 FONCTIONS SI-ET-OU... 5 LA FONCTION

Plus en détail

Exercices sur les Boucles

Exercices sur les Boucles Les Boucles Exercices - page 1 Exercices sur les Boucles Auteur: E. Thirion Exercice 1: Méthode coué Objectif: Afficher 10 fois la même phrase dans la zone de liste, tout d'abord en utilisant une boucle

Plus en détail

Excel Visual Basic. Fiche formation Excel Visual Basic - N : 12104 - Mise à jour : 01/12/2015

Excel Visual Basic. Fiche formation Excel Visual Basic - N : 12104 - Mise à jour : 01/12/2015 Impression à partir du site https://offredeformation.picardie.fr le 11/02/2016. Fiche formation Excel Visual Basic - N : 12104 - Mise à jour : 01/12/2015 Excel Visual Basic CEFIRH 1 rue Joseph Cugnot Tél

Plus en détail

Cours d informatique du 17/11/2009 A. Rappels sur les boucles

Cours d informatique du 17/11/2009 A. Rappels sur les boucles Cours d informatique du 17/11/2009 A. Rappels sur les boucles 1) Rappel sur les invariants de boucle : L invariant de boucle est un outil pour concevoir cette boucle. Il peut exister plusieurs invariants

Plus en détail

L AUTOMATISATION DU FONCTIONNEMENT D UNE BASE DE DONNÉES

L AUTOMATISATION DU FONCTIONNEMENT D UNE BASE DE DONNÉES 1 L AUTOMATISATION DU FONCTIONNEMENT D UNE BASE DE DONNÉES Dans ce chapitre, nous allons automatiser le fonctionnement de la base de données. Jusqu à présent, nous avons créé différents objets, mais maintenant

Plus en détail

CH.2 CODES CORRECTEURS

CH.2 CODES CORRECTEURS CH.2 CODES CORRECTEURS 2.1 Le canal bruité 2.2 La distance de Hamming 2.3 Les codes linéaires 2.4 Les codes de Reed-Muller 2.5 Les codes circulaires 2.6 Le câblage des codes circulaires 2.7 Les performances

Plus en détail

Couper en deux, encore et encore : la dichotomie

Couper en deux, encore et encore : la dichotomie Couper en deux, encore et encore : la dichotomie I : Jeu du nombre inconnu Un élève volontaire choisit un nombre entier compris entre 0 et 56. Un autre élève cherche à deviner ce nombre, en adoptant la

Plus en détail

Pilotage de la caméra CSB4000CL par liaison RS.

Pilotage de la caméra CSB4000CL par liaison RS. ELVITEC Sas Tél : (33) 04 90 09 25 80 139, rue Philippe de Girard Fax : (33) 04 90 79 34 38 84120 Pertuis Web : www.elvitec.fr France Email : support@elvitec.fr Pilotage de la caméra CSB4000CL par liaison

Plus en détail

Tableaux dynamiques avec vector

Tableaux dynamiques avec vector Tableaux dynamiques avec vector Tableaux statiques Les tableaux que nous avons vus jusqu'ici sont des tableaux statiques: int tab[3]; Cette forme de tableaux vient du langage C, et est encore très utilisée.

Plus en détail

Gérez une petite base de données avec Excel

Gérez une petite base de données avec Excel Gérez une petite base de données avec Excel Pour tenir à jour une liste de personnes, de produits dans un stock, conservez cette liste dans une feuille de calcul. Il sera alors facile d'y saisir et d'y

Plus en détail

P.O.O. : Java TD n 1 Les bases du langage

P.O.O. : Java TD n 1 Les bases du langage E.P.U. GB4 (BIMB) Eclipse P.O.O. : Java TD n 1 Les bases du langage Eclipse est un IDE (Integrated Development Environment EDI en français). Il est développé par IBM, est gratuit et disponible pour la

Plus en détail

Les Tables de Hachage

Les Tables de Hachage NICOD JEAN-MARC Licence 3 Informatique Université de Franche-Comté UFR des Sciences et Techniques septembre 2007 NICOD JEAN-MARC 1 / 34 Référence Tables à adressage directe Thomas H. Cormen, Charles E.

Plus en détail

Tableaux et fichiers. Licence AES AGE

Tableaux et fichiers. Licence AES AGE Tableaux et fichiers Licence AES AGE D.Gonzalez Mars 2004 Table des matières 1 Les tableaux 2 1.1 Qu est-ce qu un tableau?................................ 2 1.2 Quelques exemples d utilisation.............................

Plus en détail