Algorithmique et langages

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

Download "Algorithmique et langages"

Transcription

1 BTS Informatique de gestion 1 re année Frédérique Parisot Algorithmique et langages Autocorrection 1 Directrice de publication : Valérie Brard-Trigo Les cours du Cned sont strictement réservés à l usage privé de leurs destinataires et ne sont pas destinés à une utilisation collective. Les personnes qui s en serviraient pour d autres usages, qui en feraient une reproduction intégrale ou partielle, une traduction sans le consentement du Cned, s exposeraient à des poursuites judiciaires et aux sanctions pénales prévues par le Code de la propriété intellectuelle. Les reproductions par reprographie de livres et de périodiques protégés contenues dans cet ouvrage sont effectuées par le Cned avec l autorisation du Centre français d exploitation du droit de copie (20, rue des Grands Augustins, Paris).

2

3 Sommaire Séquence 2 : Les différents types de données et leurs opérations de base 5 Séquence 3 : Les structures conditionnelles 29 Séquence 4 : Les structures itératives 53

4

5 Séquence 2 Les différents types de données et leurs opérations de base Exercice 1 Partie 1 Les trois familles de données et l opération d affectation Observer les opérations d'affectations suivantes. Lorsqu'une opération est correcte, donner son résultat, lorsqu'elle n'est pas correcte, expliquer pourquoi. nb1 (entier) nb2 (entier) nb3 (réel) bool1 (booléen) ch1 (chaîne[6]) ch2 (chaîne[4]) N de ligne Algo Résultat et explication 1 Saisir (nb1) Correct. Si l'utilisateur saisit bien un nombre entier, nb1 vaudra ce que l'utilisateur a saisi, sinon, le programme s'arrêtera, pour cause d'erreur. On apprendra plus tard en TP à gérer les erreurs de saisie et les erreurs de calcul. 2 nb3! nb2 + 1 Incorrect car nb2 n'a pas été initialisée, on essaie donc d'affecter à nb3 une valeur indéterminée à laquelle on rajoute 2. 3 nb2! nb1 Correct. nb2, suite à cette instruction, a la même valeur que nb1, qui est la valeur saisie par l'utilisateur en ligne 1. 4 nb1! 45 Correct. Suite à cette instruction, nb1 vaut nb2! 67.5 Incorrect car nb2 est de type entier et que 67.5 n'est pas un entier. Selon le langage de programmation utilisé pour traduire l'algorithme, soit le programme s'arrête en signalant une erreur, soit c'est seulement la partie entière de 67.5 (donc 67) qui est affectée à nb2, il y a dans ce cas perte d'information. 6 nb3! nb1 * 0.2 Correct. Un entier (nb1) multiplié par un réel (0.3) donne un réel et nb3 est un réel. 7 nb1! nb3 Incorrect. On peut ranger un entier dans un réel, mais pas l'inverse. Comme lors de l'instruction de la ligne 5, selon le langage de programmation utilisé, soit le programme s'arrête en signalant une erreur, soit c'est seulement la partie entière de nb3 qui est affectée à nb TG PA 01 5

6 Séquence 2 8 ch1! "maison" Correct. Suite à cette instruction, la chaîne ch1 contient "maison". 9 ch2! bool1 Incorrect. Ici l'erreur est double : on essaie de ranger un booléen dans une chaîne de caractères et en plus le booléen bool1 que l'on veut affecter à ch2 n'a pas été initialisé. 10 ch2! ch1 Cette affectation est algorithmiquement incorrecte. ch1 contient 6 caractères alors que ch2 ne peut en contenir que 4. Selon le langage de programmation utilisé, soit un message d'erreur s'affichera lors de l'exécution de cette instruction, indiquant un problème de taille, soit ch1 sera tronquée et ch2 contiendra alors "mais". 11 ch1! "Olé" Correct. ch1 vaut "olé" et les 3 caractères suivants de ch1 contiennent du vide. 12 ch2! ch1 Algorithmiquement incorrect. Ce n'est pas parce que ch1 ne contient que 3 caractères que ça n'est plus une chaîne de 6 caractères! À titre d'exemple, pour mieux illustrer les lignes 10 et 12 de l'algorithme précédent, je les ai écrites avec Windev et voici ce que cela donne : Le programme // Déclaration des données ch1 est une chaîne fixe sur 6 ch2 est une chaîne fixe sur 4 // Affectation ch1 = "maison" ch2 = ch1 // Affichage du résultat info (ch2) // Déclaration des données ch1 est une chaîne fixe sur 6 ch2 est une chaîne fixe sur 4 // Affectation ch1 = "olé" ch2 = ch1 // Affichage du résultat info (ch2) Son résultat Donc ça marche, bien que ça soit algorithmiquement incorrect. Moralité, quand on utilise des chaînes de caractères, mieux vaut bien réfléchir avant de préciser la longueur et dans le doute s'abstenir en déclarant par exemple ch1 (chaîne), ch2 (chaîne) sans préciser la longueur si ça n'est pas indispensable. 6

7 Les différents types de données et leurs opérations de base Ce qui, une fois programmé, donne : Le programme Son résultat ch1 est une chaîne ch2 est une chaîne ch1 = "maison" ch2 = ch1 info (ch2) ch1 est une chaîne ch2 est une chaîne ch1 = "olé" ch2 = ch1 info (ch2) Exercice 2 Écrire un algorithme qui calcule le salaire brut et le salaire net d'un fonctionnaire dont l'indice en nombre de points est saisi, et qui affiche ensuite un résultat semblable à l'exemple suivant : Indice = 500 Prix du point = 10.5 Taux de retenue = 0.1 Salaire brut = 5250 Salaire net = 4725 La valeur d'un point est une constante valant 10,50 et les retenues représentent 1/10 du salaire brut. La règle de calcul du salaire net est la suivante : salaire net = (indice * valeur du point) (1 taux de retenue). Ici, 1- taux de retenue a pour valeur 0.9. Dans cet algo, on peut considérer que la valeur du point est une constante ainsi que les retenues. Il y a plusieurs façons plus ou moins élaborées de gérer le fait que certaines données soient des constantes. La façon la plus sommaire consiste à les utiliser tel quel dans les calculs, ce qui donne la version suivante. indice (entier, saisi) : indice du fonctionnaire en nombre de points. Algo exercice 2 Calcul de salaire Afficher ("Saisissez l'indice de l'employé :") Saisir (indice) Afficher ("Indice =", indice) Afficher ("Prix du point = 10.5") Afficher ("Taux de retenue = 0.1") Afficher ("Salaire brut = ", indice * 10.5) Afficher ("Salaire net = ", indice * 10.5 * 0.9) 7

8 Séquence 2 L'inconvénient de cette façon de faire est le suivant : imaginez que dans sa grande bonté, le patron décide de faire passer le prix du point de 10.5 à 12, et que le taux de retenue passe à 0,12. Il vous en avertit, vous, l'informaticien(ne) chargé(e) de la maintenance des programmes, afin que vous fassiez la modification adéquate. Avec cette façon sommaire de faire, vous vous retrouvez avec 4 lignes d'instructions à modifier. Imaginez alors avec un programme plus volumineux! Pour éviter cet inconvénient, il est préconisé de faire plutôt comme suit : indice (entier, saisi) : indice du fonctionnaire en nombre de points. valpoint(réel, constante) = 10.5 : valeur du point. retenue (réel, constante) = 0.1 : taux de retenue. Algo exo 2 Version plus évoluée Afficher ("Saisissez l'indice de l'employé :") Saisir (indice) Afficher ("Indice =", indice) Afficher ("Prix du point =", valpoint) Afficher ("Taux de retenue =", retenue) Afficher ("Salaire brut = ", indice * valpoint) Afficher ("Salaire net = ", indice * valpoint * (1 - retenue) De cette manière, en cas de modification de la valeur d'une des 2 constantes, il n'y a qu'une seule modification à faire, lors de la déclaration de la constante. Maintenant, cet algo comporte un autre défaut. Vous pourrez remarquer en effet que l'on calcule 2 fois le salaire brut : la première fois, lors de l'instruction Afficher ("Salaire brut = ", indice * ValPoint), et la deuxième fois, dans le calcul du salaire net : indice * ValPoint * (1 - Retenue). En fait, le salaire net vaut le salaire brut * (1 - retenue). Faire plusieurs fois le même calcul qui utilise les mêmes valeurs est un défaut car cela sollicite plusieurs fois le processeur pour rien. Ce qu'il faut faire : c'est effectuer une seule fois le calcul et ranger son résultat dans une variable que l'on utilise chaque fois qu'on en a besoin. Ce qui, dans notre algo, donne : indice (entier, saisi) : indice du fonctionnaire en nombre de points. valpoint(réel, constante) = 10.5 : valeur du point. retenue (réel, constante) = 0.1 : taux de retenue. salairebrut (réel, calculé) : salaire brut de l'employé, calculé en fonction du nombre de points et de la valeur du point. Algo exo 2 Promis, c'est la dernière version Afficher ("Saisissez l'indice de l'employé :") Saisir (indice) salairebrut indice * valpoint Afficher ("Indice =", indice) Afficher ("Prix du point =", valpoint) Afficher ("Taux de retenue =", retenue) Afficher ("Salaire brut = ", salairebrut) Afficher ("Salaire net = ", salairebrut * (1 - retenue) fin Voilà. Là, on ne sollicite pas 2 fois le processeur pour le même calcul. Il est tout beau notre algo. 8

9 Les différents types de données et leurs opérations de base Je voudrais profiter de la place qui reste sur cette page blanche pour attirer votre attention sur la façon dont on nomme les variables dans nos algos. Dans l'exo précédent, vous avez peut-être remarqué que certaines variables n'ont pas de majuscule (comme par exemple la variable indice), et que d'autres variables comportent une ou plusieurs majuscules (comme par exemple valpoint). Je vous explique les deux principes que j'utilise pour créer les noms des variables : les noms des variables commencent par une minuscule ; quand le nom de la variable est composé de plusieurs mots ou plusieurs morceaux de mots, je mets une majuscule au début de chaque mot ou début de mot afin qu'on puisse rapidement les repérer, sauf pour le premier mot ou morceau de mot constituant le nom de la variable. Par exemple, le nom de variable valpoint est composé d'un bout de mot (val pour dire valeur) et d'un mot (Point, pour dire point). Cela nous permet de nous rappeler que cette variable valpoint contient la valeur du point. Vous n'êtes pas obligés d'appliquer ce principe, mais je vous conseille, si ce principe là ne vous convient pas, d'en trouver un qui vous permette de vous y retrouver. Mais surtout, évitez au maximum d'appeler vos variables avec des noms comme x, y ou z, car cela enlève beaucoup de lisibilité aux algorithmes et aux programmes. 9

10 Séquence 2 Exercice 3 Partie 2 Les données de type numérique et leurs opérations de base Dans cet exercice, on vous donne une opération d'affectation ainsi que l'état des variables avant exécution de l'opération d'affectation. Vous devez trouver l'état des variables après exécution de l'opération d'affectation. x, y et z sont des variables de type numérique. Alors là, vous devez vous dire : «alors elle nous dit de ne pas appeler nos variables x, y ou z et dans le premier exo qui suit, elle appelle ses variables x, y et z.» Oui, c'est vrai. Mais cet exercice ne vous renseigne en rien sur le rôle des variables. C'est seulement un exo qui a pour but de vous faire manipuler les opérations de base. Avant l'opération Opération Après l'opération x =? (x a été uniquement déclarée, mais pas encore initialisée.) x = 2 y = 5 x = 5 y = 5 z = 3 x = 7 y = 5 x! 2 x! y x! y + z -1 x! x DIV y x = 2 (fastoche!) x = 5, y = 5. Oui, y écrase la valeur de x avec sa propre valeur; donc, maintenant, x = y. x = 7, y = 5, z = 3. Seule x est modifiée par cette instruction. Les 2 autres variables conservent leur valeur initiale. x = 1, y = 5. Seule x est modifiée par cette instruction. x est remplacée par elle-même divisée par 5 (7 DIV 5 = 1). Exercice 4 Donnez la valeur de toutes les variables à chaque instruction. 1. X 27 MOD 4 X = 3 (car 27 div 4 = 6 et il reste 3) Y X * 2 Y = 6 Z 301 DIV X Z = 100 Y ENT(Z / Y) Y = 16 (100/6 = 16,66, partie entière de 100/6 = 16) 2. X 3 ^ 2 X = 9 Z 3 Z = 3 Y X ^ (10 DIV Z) Y = 9 3 = 729 (10 div 3 = 3) 10

11 Les différents types de données et leurs opérations de base Exercice 5 Soient 2 variables réelles x et y, saisies au clavier par l'utilisateur. Écrire l'algorithme permettant de permuter les valeurs de x et y, et d'afficher ces nouvelles valeurs. nb1(entier, saisi) : premier nombre à échanger. nb2 (entier, saisi) : second nombre à échanger. nbtemp (entier, calculé) : variable temporaire utilisée pour l'échange. Algo exo 5 Permutation Afficher ("Saisir premier nombre") Saisir (nb1) Afficher ("Saisir second nombre") Saisir (nb2) // Avant d'effectuer l'échange, on stocke nb1 dans // une variable temporaire pour ne pas le perdre nbtemp! nb1 // On effectue la première étape de l'échange : on "écrase" nb1 // avec nb2 nb1! nb2 // Deuxième étpae de l'échange : on redonne à nb2 l'ancienne // valeur de nb1, qui est dans nbtemp nb2! nbtemp Afficher ("Après échange, le premier nombre vaut", nb1) Afficher ("et le second nombre vaut", nb2) Remarque : Pour l'échange, on aurait très bien pu utiliser la séquence d'instructions suivante : nbtemp! nb2 nb2! nb1 nb1! nbtemp, Quelle que soit la façon choisie, on effectue réellement l'échange. Pour écrire cet algo, il y a une autre solution qui consiste à uniquement simuler l'échange, juste au moment de l'affichage. nb1(entier, saisi) : premier nombre à échanger. nb2 (entier, saisi) : second nombre à échanger. Algo exo 5 Version où on simule l'échange des valeurs Afficher ("Saisir premier nombre") Saisir (nb1) Afficher ("Saisir second nombre") Saisir (nb2) // On simule l'échange lors de l'affichage Afficher ("Après échange, le premier nombre vaut", nb2) Afficher ("et le second nombre vaut", nb1) 11

12 Séquence 2 On aurait pu faire aussi : nb1(entier, saisi) : premier nombre à échanger. nb2 (entier, saisi) : second nombre à échanger. Algo exo 5 Une autre version où l'échange est simulé // On prépare la simulation de l'échange dès la saisie Afficher ("Saisir premier nombre") Saisir (nb2) Afficher ("Saisir second nombre") Saisir (nb1) // Et il ne reste plus qu'à afficher Afficher ("Après échange, le premier nombre vaut", nb1) Afficher ("et le second nombre vaut", nb2) Remarque : faire réellement l'échange ou le simuler est un choix à faire en fonction des besoins que l'on a dans notre programme. Si on a effectivement besoin que les valeurs saisies soient échangées, alors il faut écrire ces instructions d'échange, sinon, une simple simulation suffit. Exercice 6 Même consigne que l'exercice 5, mais sans utiliser de variable intermédiaire, uniquement par calcul entre les 2 variables. nb1(entier, saisi) : premier nombre à échanger. nb2 (entier, saisi) : second nombre à échanger. Algo exo 6 Échange casse-tête chinois Afficher ("Saisir premier nombre") Saisir (nb1) Afficher ("Saisir second nombre") Saisir (nb2) // Echange par calcul nb1! nb2 + nb1 nb2! nb1 nb2 nb1! nb1 nb2 Afficher ("Après échange, le premier nombre vaut", nb1) Afficher ("Après échange, le second nombre vaut", nb2) Quelle salade, hein! 12

13 Les différents types de données et leurs opérations de base Décomposons ce qui se passe. Instruction nb1 nb2 + nb1 Explication Après cette instruction, on a à notre disposition pour l'échange deux valeurs : nb2 + nb1 et nb2 Pour plus de clarté, appelons nb1 par 2 noms : nouveaunb1 et anciennb1. Ici, on a : nouveaunb1 = nb2 + anciennb1 nb2 nb1 nb2 nouveaunb1 nb2 = nb2 + anciennb1 nb2, puisque nouveaunb1 = nb2 + anciennb1 Donc, maintenant, nouveaunb2 = anciennb1, on vient de faire une partie de l'échange. nb1 nb1 nb2 Ça va? nouveaunb1 = nouveaunb1 nouveaunb2 Or, nouveaunb2 = anciennb1 Donc, nouveaunb1 = nouveaunb1 anciennb1 = anciennb2 + anciennb1 anciennb1 = anciennb2, on vient d'effectuer l'autre partie de l'échange. Pour mieux comprendre que ça marche effectivement, faisons tourner l'algo précédent à la main avec un exemple : on suppose que l'utilisateur saisit 4 pour nb1 et 9 pour nb2. Algo Nb1 Nb2 Résultat à l'affichage?? Afficher ("Saisir premier nombre") Saisir (nb1) 4? Saisir premier nombre Afficher ("Saisir second nombre") 4 Saisir second nombre Saisir (nb2) 4 9 nb1! nb2 + nb nb2! nb1 nb nb1! nb1 nb2 9 4 Afficher ("Après échange, le premier nombre vaut", nb1) Afficher ("Après échange, le second nombre vaut", nb2) Après échange, le premier nombre vaut 9 Après échange, le second nombre vaut 4 Magique! Ça marche aussi même si les nombres saisis sont négatifs, vous pouvez essayer si vous n'êtes pas convaincus. 13

14 Séquence 2 Exercice 7 L'ordre des instructions dans un algo et un programme a une grande importance. Le cancre de service, à la dernière interro, a tout pompé sur sa voisine, mais dans le désordre. Remettez en ordre les instructions de son algo et indiquez quel traitement fait cet algo. Cet algo calcule et affiche la moyenne pondérée des 3 notes saisies. coef1 = 3 (entier, constante) : coefficient de la première note. coef 2 = 4 (entier, constante) : coefficient de la deuxième note. coef 3 = 2 (entier, constante) : coefficient de la troisième note. note1, note2, note3 (entiers, saisis) : notes de l'élève. total (entier, calculé) : total. Algo concours Afficher ("Donner la note obtenue à l'épreuve 1 : ") Saisir (note1) Afficher ("Donner la note obtenue à l'épreuve 2 : ") Saisir (note2) Afficher ("Donner la note obtenue à l'épreuve 3 : ") Saisir (note3) total! (note1 * coef1 + note2 * coef2 + note3 * coef3) / coef 1 + coef 2 + coef 3 Afficher ("Epreuve 1 ", note1," ",coef1) Afficher ('Epreuve 2 ', note2,' ',coef2) Afficher ('Epreuve 3 ', note3,' ',coef3) Afficher ("Le total est de :", total) Exercice 8 Pour écrire un algo et qu'il soit exact, cela suppose que l'on a bien décomposé toutes les étapes des traitements à faire effectuer à notre futur programme. Un informaticien mal réveillé doit écrire, pour le service comptabilité de son entreprise, un programme qui permette de calculer la TVA ainsi que le prix TTC d'un prix HT saisi au clavier, et il a écrit l'algorithme suivant. Cet informaticien a mal décomposé les différentes instructions. Trouvez la ou les instructions manquantes et insérez-la ou insérez-les au bon endroit. Ce qui manquait, bien sûr, c'est l'instruction qui calcule le prix TTC. Voici l'algo corrigé (j'ai indiqué en caractères gras l'instruction manquante) : Algo Comptabilité Afficher("Entrer le prix hors taxe ") Saisir (PrixHT) TVA PrixHT * TAUX PrixTTC! PrixHT + TVA Afficher ("La TVA est de :", TVA) Afficher ("Le prix T.T.C. est de :", PrixTTC) 14

15 Les différents types de données et leurs opérations de base Exercice 9 Écrire l'algorithme qui calcule et affiche le nom et le salaire net d'un employé d'une entreprise. Le salaire horaire, le nombre d'heures travaillées, le taux de retenue, le montant de la prime et le nom de l'employé sont saisis au clavier. Dans cette entreprise, les employés sont payés à l'heure et bénéficient d'une prime d'ancienneté. nom (chaîne, saisie) : nom de l'employé. salhor (réel, saisi) : salaire horaire. nbh (entier, saisi) : nombre d'heures travaillées. tauxret (réel, saisi) : Taux de retenue. prime (réel, saisi) : prime. Algo exo 9 Calcul du salaire net Afficher ("Saisissez le nom de l'employé") Saisir (nom) Afficher ("Saisissez le salaire horaire") Saisir (salhor) Afficher ("Saisissez le nombre d'heures travaillées") Saisir (nbh) Afficher ("Saisissez le taux de retenue") Saisir (tauxret) Afficher ("Saisissez le montant de la prime") Saisir (prime) Afficher ("L'employé (e) ", nom, " doit percevoir un salaire net de ", (nbh * salhor + prime)*(1 tauxret), "euros.") Nous reprendrons cet exercice dans la séquence 4, afin de le généraliser à plusieurs employés. Exercice 10 Écrire l'algo qui calcule et affiche en heures, minutes et secondes un temps saisi en secondes. Exemple : Temps saisi : 3824 Résultat : 1 H 3 M 44 S Vous avez besoin d'utiliser la division entière et le reste de la division entière. 15

16 Séquence 2 Il fallait, pour obtenir le résultat escompté, diviser le nombre saisi par 3600, ce qui donnait le nombre d'heures, et diviser ensuite le reste par 60 pour obtenir le nombre de minutes. temps (entier, saisi) : temps à convertir. nbh (entier, calculé) : nombre d'heures. nbmin (entier, calculé) : nombre de minutes. nbsec(entier, calculé) : nombre de secondes. Algo exo 10 Traduction temps Afficher ("Saisissez le temps à convertir") Saisir (temps) // Calcul du nombre d'heures nbh! temps div 3600 // Calcul du nombre de minutes nbmin! (temps mod 3600) div 60 // Calcul du nombre de secondes nbsec! (temps mod 3600) mod 60 Afficher ("Nombre d'heures, de minutes et de secondes contenues dans ", temps, "secondes :", nbh, " heure(s) ", nbmin, " minute(s) ", nbsec, " secondes.") Cette version de corrigé n'est pas très optimisée, car on peut constater qu'on effectue 2 fois le même calcul : temps mod Pour améliorer notre algo, on va créer une nouvelle variable qu'on appellera par exemple reste, dans laquelle on rangera une fois pour toutes le résultat du calcul temps mod On aurait pu également ne pas créer de variable pour stocker le nombre d'heures, de minutes et de secondes puisqu'on ne les utilise qu'une fois, cela complique un peu l'instruction d'affichage mais elle reste encore tout à fait lisible. Algo exo 10 Traduction temps Version 2 temps (entier, saisi) : temps à convertir. reste (entier, calculé) : reste de la division entière de temps par Afficher ("Saisissez le temps à convertir") Saisir (temps) reste! temps mod 3600 Afficher ("Nombre d'heures, de minutes et de secondes contenues dans ", temps, "secondes :", temps div 3600, " heure(s) ", reste div 60, " minute(s) ", reste mod 60, " secondes.") Exercice 11 Écrire l algorithme qui permet d effectuer des permutations suivant l'exemple ci-dessous : AVANT : X = 1 Y = 2 Z = 3 APRÈS : X = 3 Y = 1 Z = 2 Cet exemple vous montre qu'après le traitement de permutation, on retrouve z dans x, x dans y et y dans z. Dans notre algorithme, on va donc avoir les 3 instructions suivantes : x! z, y! x et z! y. 16

17 Les différents types de données et leurs opérations de base Mais attention, on ne peut pas faire ces permutations comme ça, sans respecter un ordre précis et sans sauvegarder les valeurs. x, y, z (entiers, saisis) : nombres à permuter. temp (entier, calculé) : variable temporaire utilisée pour la permutation. Algo exo 11 Permutation Afficher ("Saisissez les 3 nombres à permuter") Saisir (x, y, z) temp! x x! z z! y y! temp On peut aussi résoudre ce problème de permutation par calcul. Voici ci-dessous la solution. Algo exo 11 Permutation Version par calcul x, y, z (entiers, saisis) : nombres à permuter. Afficher ("Saisissez les 3 nombres à permuter") Saisir (x, y, z) x! x + y + z y! x y z z! x y z x! x y z Exercice 12 Écrire l algorithme qui transforme et affiche un nombre saisi en nombre pair immédiatement inférieur. Exemple : L'utilisateur saisit 7, affichage de 6. L'utilisateur saisit 10, affichage de 10. L'utilisateur saisit 19, affichage de 18. Le moyen d'obtenir le nombre pair égal ou immédiatement inférieur au nombre saisi est la division entière par 2. En effet, seuls les nombres divisibles par 2 sont pairs. Exemple : soit 17 le nombre saisi, si je lui applique la division entière par 2, cela me donne 8 et il me suffit de re-multiplier ce nombre par 2 pour obtenir le nombre pair immédiatement inférieur au nombre initialement saisi. 17

18 Séquence 2 nombre (entier, saisi) : nombre à manipuler. Algo exo 12 Astuce du jour Afficher ("Saisissez le nombre") Saisir (nombre) Afficher ("Le nombre pair immédiatement inférieur au nombre que vous avez saisi est ", (nombre div 2) * 2) On pouvait utiliser une autre formule pour calculer le bon nombre : nombre (nombre mod 2). Exercice 13 Écrire l'algorithme qui affiche à l'écran, en le minimum de pièces et de billets, la décomposition d'une somme d'argent saisie au clavier par l'utilisateur. Pièces et billets autorisés : 100, 50, 10, 5 et 1 euros. Vous avez pour faire cela besoin d'utiliser la division entière et le reste de la division entière. Pour obtenir le résultat escompté, il faut effectuer des divisions successives de la somme par 100, puis 50 sans oublier, entre chaque division, de déduire le montant que l'on vient de décomposer. Exemple : soit 745, la somme à décomposer. 745 div 100 donne le nombre de billets de 100, soit 7 billets. Il reste ensuite 45 euros à décomposer, soit qui s'obtient par l'expression 745 mod 100 (le reste de la division entière par 100). 45 div 50 donne le nombre de billets de 50, qui ici est 0, 45 mod 50 donne la somme restant à décomposer, à savoir div 10 = 4 (c'est le nombre de pièces de 10), 45 mod 10 = 5. 5 div 5 = 1 (nombre de pièces de 5), 5 mod 5 = 0 (nombre de pièces de 1). Après chaque division entière, il faut récupérer le reste de la division pour pouvoir faire la division entière suivante : on peut, pour ce faire, modifier la valeur de la somme après chaque division (par exemple, l'instruction somme! somme mod 100 nous permet de récupérer dans somme la somme restant à décomposer après avoir calculé le nombre de billets de 100). 18

19 Les différents types de données et leurs opérations de base somme (entier, saisi) : somme à décomposer. nb100 (entier, calculé) : nombre de billets de 100. nb50 (entier, calculé) : nombre de billets de 50. nb10 (entier, calculé) : nombre de pièces de 10. nb5 (entier, calculé) : nombre de pièces de 5. nb1 (entier, calculé) : nombre de pièces de 1. Algo décompo Afficher ("Saisir la somme à décomposer") Saisir (somme) nb100! somme div 100 // Ici, on remplace la somme par le montant // restant à décomposer somme! somme mod 100 nb50! somme div 50 somme! somme mod 50 nb10! somme div 10 somme! somme mod 10 nb5! somme div 5 nb1! somme mod 5 Afficher (nb100, " billet(s) de 100") Afficher (nb50, " billet(s) de 50") Afficher (nb10, " pièce(s) de 10") Afficher (nb5, " pièce(s) de 5") Afficher (nb1, " pièce(s) de 1") Une remarque concernant l'affichage : afficher "billet(s) de 50" et "pièce(s) de 5" est inutile, on aurait dû écrire "billet de 50" et "pièce de 5" car on ne peut jamais avoir plus d'un billet de 50, ni plus d'une pièce de 5. Une autre remarque : au lieu de créer une variable pour chaque nombre de pièces et de billets, on pourrait afficher les résultats au fur et à mesure, comme ci-dessous. Algo décompo version 2 somme (entier, saisi) : somme à décomposer. Afficher ("Saisir la somme à décomposer") Saisir (somme) Afficher (somme div 100, " billet(s) de 100") somme! somme mod 100 Afficher (somme div 50, " billet de 50") somme! somme mod 50 Afficher (somme div 10, " pièce(s) de 10") somme! somme mod 10 Afficher (somme div 5, " pièce de 5") Afficher (somme mod 5, " pièce(s) de 1") Une dernière remarque : quelle que soit la version de corrigé, cet algo n'est absolument pas optimisé car pour le moment vous n'avez pas les connaissances requises. Nous le reprendrons dans un chapitre ultérieur et vous verrez qu'il prendra seulement quelques lignes. 19

20 Séquence 2 Exercice 14 Partie 3 Les chaînes de caractères et leurs opérations Traduction des mots en code secret. On l'a tous fait quand on était petit! Écrire l'algorithme qui traduit un mot saisi au clavier et comportant 4 lettres, en codes numériques ascii. Exemple : si l'utilisateur saisit le mot jour, alors le message suivant s'affiche : Le code secret du mot jour est Remarque : Les nombres 106, 111, 117 et 114 sont respectivement les codes ascii des caractères j, o, u, et r. La difficulté de cet algo réside dans le découpage caractère par caractère de la chaîne de caractères saisie par l'utilisateur. On doit en effet découper cette chaîne de caractères pour pouvoir ensuite appliquer la fonction ascii à chacun d'entre eux. Le plus simple pour effectuer ce découpage est d'utiliser la notation mot[1], mot[2], mot[3], mot[4], qui isole respectivement le premier, le second, le troisième et le quatrième caractère du mot à coder. Il suffit ensuite d'appliquer la fonction ascii à chacun des caractères du mot. Par exemple, le code numérique du premier caractère du mot s'obtient à l'aide de la notation ascii (mot[1]). Ce qui donne le petit algo suivant : mot (chaîne[4], saisie) : mot à coder. ascii (fonction, résultat : entier) : retourne le code ascii du caractère passé en paramètre. Algo exo 14 Code secret Afficher ("Saisissez le mot de 4 lettres à coder") Saisir (mot) Afficher ("Le code secret du mot ", mot, " est ", ascii (mot[1]) + " " + ascii (mot[2]) + " " + ascii (mot[3]) + " " + ascii(mot[4]) On aurait pu remplacer la notation mot[1], mot[2] etc. par l'utilisation de la fonction souschaine, ce qui, par exemple, pour le 3 e caractère du mot, aurait donné ascii (souschaine(mot,3,1)), mais cela alourdit la notation et ne présente aucun intérêt, cependant, cela reste juste. Exercice 15 Il s'agit, dans cet exercice, d'écrire l'algorithme permettant le cryptage d'un mot. Votre client est agent secret et écrit ses messages en langage crypté. Il vous demande de lui écrire un programme qui crypte le mot qu'il saisit. Ce cryptage consiste à inverser le mot et à intercaler entre chacune de ses lettres la lettre qui a la position symétrique dans l'alphabet. Je vous explique : l'alphabet comporte 26 lettres (a b c d e f g h i j k l m n o p q r s t u v w x y z). 20

21 Les différents types de données et leurs opérations de base Dans l'alphabet, a est la lettre symétrique de z, b est la symétrique de y, c est la symétrique de x,, et ainsi de suite jusqu'à m qui est la symétrique de n. Donc, si l'agent secret saisit par exemple : ole, ce mot crypté devient : evlool. Pour obtenir ce résultat, on a inversé le mot ole qui est devenu elo, puis on a intercalé v qui est le symétrique de e, o qui est le symétrique de l et l qui est le symétrique de o. Ecrivez cet algorithme pour 1 mot de 3 lettres, ce mot étant saisi au clavier par l'utilisateur. Vous avez besoin de pas mal d'opérations différentes pour écrire cet algorithme. Je crois bien que vous avez besoin d'utiliser toutes les notions concernant les chaînes de caractères. mot (chaîne[3], saisie) : mot à crypter. chr (fonction, résultat : caractère) : retourne le caractère correspondant au code ascii passé en paramètre. ascii (fonction, résultat : entier) : retourne le code ascii du caractère passé en paramètre. Algo exo 15 Cryptage Afficher ("Saisir le mot de 3 lettres à crypter") Saisir (mot) Afficher ("Le mot ", mot, "une fois crypté devient :", mot[3]+chr (219 ascii (mot[3])) + mot[2]+ chr (219 ascii (mot[2])) + mot[1] + chr (219 ascii (mot[1])) Remarque : nous reprendrons l'exercice 14 et l'exercice 15 dans des séquences ultérieures, pour les généraliser à des mots ou des phrases de n'importe quelle longueur. 21

22 Séquence 2 Exercice 16 Écrire l'algorithme du programme dont le scénario est le suivant. Une première question s'affiche : Quel est votre nom? Une fois que l'utilisateur a saisi son nom et validé sa saisie, une seconde question s'affiche : Quel est votre prénom? Lorsque l'utilisateur a saisi son prénom et validé sa saisie, une troisième question s'affiche enfin : Quelle est votre date de naissance (jj/mm/aaaa)? Une fois que l'utilisateur a saisi sa date de naissance et validé sa saisie, un message s'affiche, indiquant l'initiale du prénom qui a été saisi, suivi d'un point, suivi du nom de famille qui a été saisi, puis de l'âge, calculé à partir de la date de naissance saisie. nom (chaîne, saisie) : nom de la personne. prenom (chaîne, saisie) : prénom de la personne. datenais (chaîne, saisie) : date de naissance de la personne. journais (entier, calculé) : jour de naissance de la personne. moisnais (entier, calculé) : mois de naissance de la personne. annnais (entier, calculé) : année de naissance de la personne. age (entier, calculé) : age de la personne. val (fonction, résultat : entier) : convertit en numérique la chaîne de caractères passée en paramètre. souschaine (fonction, résultat : chaîne) : retourne une partie de la chaîne passée en paramètre, à partir de la position passée en paramètre et de la longueur passée en paramètre. joursysteme (fonction, résultat : entier) : renvoie le jour de la date du jour. moissysteme (fonction, résultat : entier) : renvoie le mois de la date du jour. anneesysteme (fonction, résultat : entier) : renvoie l'année de la date du jour. Algo exo 16 Calcul de l'âge Afficher ("Quel est votre nom?") Saisir (nom) Afficher ("Quel est votre prénom?") Saisir (prenom) Afficher ("Quel est votre date de naissance (jj/mm/ aaaa)?") Saisir (datenais) // Découpage de la date de naissance journais! val (souschaine (datenais,1,2)). moisnais! val (souschaine (datenais,4,2)) annnais! (souschaine (datenais,7,4)). // Calcul de l'âge age! ent ((joursystème - journais + (moissystème moisnais) * 365,25/12 + (annéesystème annnais) *365,25) / 365,25) // Affichage Afficher ("Vous vous appelez ", prenom[1], ".", nom, " et vous avez", age, "ans.") Vous avez remarqué que pour l'initiale du prénom, au lieu de s'embêter à utiliser la fonction sous- Chaine, on s'est contenté d'utiliser la notation prenom[1], cette donnée représentant le premier caractère de la chaîne prenom. Dans cet algo, on a également supposé que l'utilisateur ne faisait pas d'erreur de saisie concernant le format de la date. Ce type de contrôle de validité des informations saisies est très important mais grandement facilité avec des produits comme Windev, vous le verrez en TP. 22

23 Les différents types de données et leurs opérations de base Pour que l'algo fasse moins de lignes, on aurait pu l'écrire comme suit, en n'utilisant pas les variables intermédiaires journais, moisnais, annnais. Algo exo 16 Calcul de l'âge Version 2 nom (chaîne, saisie) : nom de la personne. prenom (chaîne, saisie) : prénom de la personne. datenais (chaîne, saisie) : date de naissance de la personne. age (entier, calculé) : âge de la personne. val (fonction, résultat : entier) : convertit en numérique la chaîne de caractères passée en paramètre. souschaine (fonction, résultat : chaîne) : retourne une partie de la chaîne passée en paramètre, à partir de la position passée en paramètre et de la longueur passée en paramètre. joursysteme (fonction, résultat : entier) : renvoie le jour de la date du jour. moissysteme (fonction, résultat : entier) : renvoie le mois de la date du jour. anneesysteme (fonction, résultat : entier) : renvoie l'année de la date du jour. Afficher ("Quel est votre nom?") Saisir (nom) Afficher ("Quel est votre prénom?") Saisir (prénom) Afficher ("Quel est votre date de naissance (jj/mm/aaaa)?") Saisir (datenais) // Calcul de l'âge age! ent ((JourSysteme val (souschaine (datenais,1,2)) + (moissysteme val (souschaine (datenais,4,2))) * 365,25/12 + (anneesysteme val (souschaine (datenais,7,4))) * 365,25)) / 365,25) // Affichage Afficher ("Vous vous appelez ", prenom[1], ".", nom, " et vous avez", age, "ans.") Pour économiser encore plus de lignes d'instructions, on aurait carrément pu écrire l'algo comme suit, en n'utilisant pas de variable intermédiaire pour l'âge, et en mettant le calcul de l'âge directement dans l'instruction d'affichage. Algo exo 16 Calcul de l'âge Version 3 nom (chaîne, saisie) : Nom de la personne. prenom (chaîne, saisie) : Prénom de la personne. datenais (chaîne, saisie) : Date de naissance de la personne. val (fonction, résultat : entier) : convertit en numérique la chaîne de caractères passée en paramètre. souschaine (fonction, résultat : chaîne) : retourne une partie de la chaîne passée en paramètre, à partir de la position passée en paramètre et de la longueur passée en paramètre. joursysteme (fonction, résultat : entier) : renvoie le jour de la date du jour. moissysteme (fonction, résultat : entier) : renvoie le mois de la date du jour. anneesysteme (fonction, résultat : entier) : renvoie l'année de la date du jour. Afficher ("Quel est votre nom?") Saisir (nom) Afficher ("Quel est votre prénom?") Saisir (prenom) Afficher ("Quel est votre date de naissance (jj/mm/aaaa)?") Saisir (datenais) // Calcul de l'âge et Affichage Afficher ("Vous vous appelez", prenom[1], ".", nom, " et vous avez", ent ((joursysteme val (souschaine (datenais,1,2)) + (moissysteme val (souschaine (datenais,4,2))) * 365,25/12 + (anneesysteme val (souschaine (datenais,7,4))) * 365,25)) / 365,25),"ans.") 23

24 Séquence 2 Mais attention, à force de vouloir concentrer les algorithmes et les programmes qui en découlent, ceux-ci finissent par perdre de la lisibilité et deviennent donc difficile à relire pour modification ou correction. Il vaut donc mieux parfois introduire des variables intermédiaires qui feront en sorte que les algos et les programmes restent clairs lors d'une relecture. Bon, il ne reste plus qu'à programmer tout ça. On va se régaler! Exercice 17 Partie 4 Les boléens et leurs opérations de base, NON, ET, OU Si je vous dis que je suis brune, que j'ai les yeux bleus et que je m'appelle Frédérique, essayez, en guise d'exercice de trouver la valeur de vérité des expressions booléennes de la table de vérité suivante : Rappel : a = je suis blonde b = j'ai les yeux bleus c = je m'appelle Gudule Dans la réalité, je suis brune, donc a est faux (je ne suis pas blonde), j'ai les yeux bleus, donc b est vrai et je m'appelle Frédérique (donc c est faux car je ne m'appelle pas Gudule) : non(a ou b) c'est-à-dire non a et non b non(a et b) c'est-à-dire non a ou non b c et (b ou a) c'est-à-dire c et b ou c et a a b c non a non b non c a ou b a et b F V F V F V V F F V F 24

25 Les différents types de données et leurs opérations de base Exercice 18 Soient 4 booléens a, b, c, d. Calculez la négation des expressions booléennes suivantes. Il n'y a bien entendu pas qu'une seule façon de calculer la négation d'une expression booléenne, par contre, il n'y a qu'un seul résultat possible. Si vous ne trouvez pas le même résultat que moi, c'est soit que vous avez fait une erreur de calcul, soit que vous n'avez pas suffisamment simplifié le résultat que vous avez trouvé. non (a ou b) non (a et b) Expression non (non (a ou b)) c'est-à-dire a ou b non (non (a et b)) c'est-à-dire a et b non a ou non b non (non a ou non b ) c'est-à-dire non non a et non non b c'est-à-dire a et b Négation de l'expression non a et non b non (non a et non b) c'est-à-dire non non a ou non non b c'est-à-dire a ou b a ou a a et (a ou b) non (a ou a) c'est-à-dire non a non (a et (a ou b)) c'est-à-dire non a ou non (a ou b) c'est-à-dire non a ou non a et non b c'est-à-dire enfin non a On pouvait utiliser tout de suite la loi d'absorption pour arriver au résultat, cet exemple vous montre que même si on ne voit pas tout de suite les règles de simplification, on peut parvenir au résultat. (a et a) ou (a et b) non ((a et a) ou (a et b)) c'est-à-dire non a et non (a et b) c'est-à-dire non a et (non a ou non b) c'est-à-dire non a et non a ou non a et non b c'est-à-dire non a ou non a et non b c'est-à-dire enfin non a Même remarque que ci-dessus. a ou (a et b) non (a ou (a et b)) c'est-à-dire non a (a ou a) et (a ou b) non ((a ou a) et (a ou b)) c'est-à-dire non a (a ou b) et (c ou d) non ((a ou b) et (c ou d)) c'est-à-dire non (a ou b) ou non (c ou d) c'est-à-dire non a et non b ou non c et non d 25

26 Séquence 2 (a et c) ou (a et d) ou (b et c) ou (b et d) non ((a et c) ou (a et d) ou (b et c) ou (b et d)) c'est-à-dire non ((a ou b) et (c ou d)) c'est-à-dire non (a ou b) ou non (c ou d) c'est-à-dire non a et non b ou non c et non d (a et b) ou (c et d) non((a et b) ou (c et d)) c'est-à-dire non(a et b) et non(c et d) c'est-à-dire non a ou non b et non c ou non d (a ou c) et (a ou d) et (b ou c) et (b ou d) Même résultat que ci-dessus. Exercice 19 Soient a et c deux booléens, soient également 3 nombres x, y et z. Calculez la négation des expressions booléennes suivantes : 1. a ou (x < y) 4. x > y et z <> 0 2. c ou (x > y ou x = y) 5. y = 4 ou (y + 2 = x et z <> 5) 3. c ou (z > y ou z = y) a ou (x < y) Expression non(a ou (x < y)) c'est-à-dire non a et non x < x c'est-à-dire non a et x >= y Négation de l'expression c ou (x > y ou x = y) non(c ou (x > y ou x = y) c'est-à-dire non c et non(x > y ou x = y) c'est-à-dire non c et non x > y et non x = y c'est-à-dire non c et x <= y et x <> y c'est-à-dire non c et x < y. Ici, on peut enlever x <> y car il est contenu dans x > y qui signifie que x est supérieur à y et différent de y. c ou (z > y ou z = y) non(c ou (z > y ou z = y)) c'est-à-dire non c et non(z > y ou z = y) c'est-à-dire non c et non z > y et non z = y c'est-à-dire non c et z <= y et z <> y c'est-à-dire non c et z < y x > y et z <> 0 non (x > y et z <> 0) c'est-à-dire non (x > y) ou non (z <> 0) c'est-à-dire (x <= y ou z = 0) y = 4 ou (y + 2 = x et z <> 5) non (y = 4 ou (y + 2 = x et z <> 5)) c'est-à-dire non (y = 4) et non (y + 2 = x et z <> 5) c'est-à-dire non (y = 4) et (non y + 2 = x ou non z <> 5) c'est-à-dire y <> 4 et (y + 2 <> x ou z =5) 26

27 Les différents types de données et leurs opérations de base Exercice 20 Reprenez toutes les expressions booléennes des 2 exercices précédents et déterminez leur valeur de vérité en supposant que les 4 booléens et les 3 nombres ont les valeurs suivantes : a = faux, b = faux, c = vrai et d = vrai, x = 2, z = 3 et y = 3. Expression non (a ou b) non (a et b) non a ou non b non a et non b a ou a a et (a ou b) Valeur vrai vrai vrai Rappel : non a ou non b = non (a et b) vrai Rappel : non a et non b = non (a ou b) faux Rappel : a ou a = a faux Rappel : selon une des lois d'absorption, a et (a ou b) = a (a et a) ou (a et b) (a et a) ou (a et b) = a ou (a et b) et selon une loi d'absorption, a ou (a et b) = a Donc, (a et a) ou (a et b) = a Cette expression est donc fausse, puisque a est faux. a ou (a et b) a ou (a et b) = a (loi d'absorption). Cette expression est donc fausse. (a ou a) et (a ou b) (a ou a) et (a ou b) = a et (a ou b) = a = faux (a ou b) et (c ou d) (a ou b) et (c ou d) = faux et vrai = faux (a et c) ou (a et d) ou (b et c) ou (b et d) faux ou faux ou faux ou faux = faux (a et b) ou (c et d) (a et b) ou (c et d) = faux ou vrai = vrai (a ou c) et (a ou d) et (b ou c) et (b ou d) On peut factoriser cette expression : (a ou c) et (a ou d) et (b ou c) et (b ou d) = (a ou (c et d) ) et (b ou (c et d)) = (a et b) ou (c et d) = vrai a ou (x < y) x < y est vrai. Donc a ou (x < y) = faux ou vrai = vrai c ou (x > y ou x = y) c est vrai donc cette expression est vraie. c ou (z > y ou z = y) c est vrai donc cette expression est vraie. x > y et z <> 0 x > y est faux, z <> 0 est vrai, Donc x > y et z <> 0 = faux et vrai = faux y = 4 ou (y + 2 = x et z <> 5) faux ou (faux et vrai) = faux ou faux = faux Voilà, fini. On se retrouve plus tard. Le TP de cette séquence vous aidera à appliquer de manière pratique toutes les notions vues dans cette séquence. 27

28

Les différents types de données et leurs opérations de base

Les différents types de données et leurs opérations de base Séquence 2 Les différents types de données et leurs opérations de base Contenu Présentation générale... 21 Partie 1 Les 3 familles de données et l'opération d'affectation... 22 1. Les trois familles de

Plus en détail

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux. UEO11 COURS/TD 1 Contenu du semestre Cours et TDs sont intégrés L objectif de ce cours équivalent a 6h de cours, 10h de TD et 8h de TP est le suivant : - initiation à l algorithmique - notions de bases

Plus en détail

1 Année LMD-STSM Algorithmique et Programmation. Série de TD 2

1 Année LMD-STSM Algorithmique et Programmation. Série de TD 2 Série de TD 2 Exercice 2.1 Quel résultat produit le programme suivant? Var val, double : entier ; Val := 231 ; Double := Val * 2 ; Ecrire (Val) ; Ecrire (Double) ;. Exercice 2.2 Ecrire un programme qui

Plus en détail

Initiation à la programmation en Python

Initiation à la programmation en Python I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de

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

L'instruction if permet d'exécuter des instructions différentes selon qu'une condition est vraie ou fausse. Sa forme de base est la suivante:

L'instruction if permet d'exécuter des instructions différentes selon qu'une condition est vraie ou fausse. Sa forme de base est la suivante: 420-183 Programmation 1 8. Les structures conditionnelles Dans l'écriture de tout programme informatique, une des premières nécessités que nous rencontrons est de pouvoir faire des choix. Dans une application

Plus en détail

1. Introduction... 2. 2. Création d'une macro autonome... 2. 3. Exécuter la macro pas à pas... 5. 4. Modifier une macro... 5

1. Introduction... 2. 2. Création d'une macro autonome... 2. 3. Exécuter la macro pas à pas... 5. 4. Modifier une macro... 5 1. Introduction... 2 2. Création d'une macro autonome... 2 3. Exécuter la macro pas à pas... 5 4. Modifier une macro... 5 5. Création d'une macro associée à un formulaire... 6 6. Exécuter des actions en

Plus en détail

Série TD 3. Exercice 4.1. Exercice 4.2 Cet algorithme est destiné à prédire l'avenir, et il doit être infaillible! Exercice 4.3. Exercice 4.

Série TD 3. Exercice 4.1. Exercice 4.2 Cet algorithme est destiné à prédire l'avenir, et il doit être infaillible! Exercice 4.3. Exercice 4. Série TD 3 Exercice 4.1 Formulez un algorithme équivalent à l algorithme suivant : Si Tutu > Toto + 4 OU Tata = OK Alors Tutu Tutu + 1 Tutu Tutu 1 ; Exercice 4.2 Cet algorithme est destiné à prédire l'avenir,

Plus en détail

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface

Plus en détail

Algorithmique avec Algobox

Algorithmique avec Algobox Algorithmique avec Algobox 1. Algorithme: Un algorithme est une suite d instructions qui, une fois exécutée correctement, conduit à un résultat donné Un algorithme doit contenir uniquement des instructions

Plus en détail

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Cours d introduction à l informatique Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions Qu est-ce qu un Une recette de cuisine algorithme? Protocole expérimental

Plus en détail

2 Grad Info Soir Langage C++ Juin 2007. Projet BANQUE

2 Grad Info Soir Langage C++ Juin 2007. Projet BANQUE 2 Grad Info Soir Langage C++ Juin 2007 Projet BANQUE 1. Explications L'examen comprend un projet à réaliser à domicile et à documenter : - structure des données, - objets utilisés, - relations de dépendance

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

I. Introduction aux fonctions : les fonctions standards

I. Introduction aux fonctions : les fonctions standards Chapitre 3 : Les fonctions en C++ I. Introduction aux fonctions : les fonctions standards A. Notion de Fonction Imaginons que dans un programme, vous ayez besoin de calculer une racine carrée. Rappelons

Plus en détail

MS PROJECT 2000. Prise en main. Date: Mars 2003. Anère MSI. 12, rue Chabanais 75 002 PARIS E mail : jcrussier@anere.com Site : www.anere.

MS PROJECT 2000. Prise en main. Date: Mars 2003. Anère MSI. 12, rue Chabanais 75 002 PARIS E mail : jcrussier@anere.com Site : www.anere. DOCUMENTATION MS PROJECT 2000 Prise en main Date: Mars 2003 Anère MSI 12, rue Chabanais 75 002 PARIS E mail : jcrussier@anere.com Site : www.anere.com Le présent document est la propriété exclusive d'anère

Plus en détail

Cours d Informatique

Cours d Informatique Cours d Informatique 1ère année SM/SMI 2007/2008, Info 2 Département de Mathématiques et d Informatique, Université Mohammed V elbenani@hotmail.com sayah@fsr.ac.ma 2007/2008 Info2, 1ère année SM/SMI 1

Plus en détail

Initiation à la comptabilité Hellodoc 4.56. Niveau : normal à confirmé

Initiation à la comptabilité Hellodoc 4.56. Niveau : normal à confirmé Initiation à la comptabilité Hellodoc 4.56 Niveau : normal à confirmé Ca y est, vous avez décidé de franchir le grand pas et d'utiliser cette année la comptabilité de Hellodoc. Dans HD5, il s'agit toujours

Plus en détail

Chapitre 2 Devine mon nombre!

Chapitre 2 Devine mon nombre! Python 3 : objectif jeux Chapitre 2 Chapitre 2 Devine mon nombre! 2.1. Thèmes abordés dans ce chapitre commentaires modules externes, import variables boucle while condition : if... elif... else la fonction

Plus en détail

Installation de Windows 2003 Serveur

Installation de Windows 2003 Serveur Installation de Windows 2003 Serveur Introduction Ce document n'explique pas les concepts, il se contente de décrire, avec copies d'écran, la méthode que j'utilise habituellement pour installer un Windows

Plus en détail

LE PROBLEME DU PLUS COURT CHEMIN

LE PROBLEME DU PLUS COURT CHEMIN LE PROBLEME DU PLUS COURT CHEMIN Dans cette leçon nous définissons le modèle de plus court chemin, présentons des exemples d'application et proposons un algorithme de résolution dans le cas où les longueurs

Plus en détail

Correction TD algorithmique

Correction TD algorithmique Affectation Correction TD algorithmique Exercice 1 algo affect1b b 5 a b+1 b 2 Il vaut faire passer la notion de variable et la notion de stockage mémoire. Une variable n a donc pas d historique et à un

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

Programmation C++ (débutant)/instructions for, while et do...while

Programmation C++ (débutant)/instructions for, while et do...while Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de

Plus en détail

LECON 2 : PROPRIETES DE L'AFFICHAGE Version aout 2011

LECON 2 : PROPRIETES DE L'AFFICHAGE Version aout 2011 LECON 2 : PROPRIETES DE L'AFFICHAGE Version aout 2011 COPIER LE FICHIER LECON 1_02 DU DISQUE D : VERS LA CLE USB Cliquez gauche deux fois sur l'icône POSTE DE TRAVAIL Cliquez gauche deux fois sur DONNEES

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

Algorithme. Table des matières

Algorithme. Table des matières 1 Algorithme Table des matières 1 Codage 2 1.1 Système binaire.............................. 2 1.2 La numérotation de position en base décimale............ 2 1.3 La numérotation de position en base binaire..............

Plus en détail

LibreOffice Calc : introduction aux tableaux croisés dynamiques

LibreOffice Calc : introduction aux tableaux croisés dynamiques Fiche logiciel LibreOffice Calc 3.x Tableur Niveau LibreOffice Calc : introduction aux tableaux croisés dynamiques Un tableau croisé dynamique (appelé Pilote de données dans LibreOffice) est un tableau

Plus en détail

TP : Shell Scripts. 1 Remarque générale. 2 Mise en jambe. 3 Avec des si. Systèmes et scripts

TP : Shell Scripts. 1 Remarque générale. 2 Mise en jambe. 3 Avec des si. Systèmes et scripts E3FI ESIEE Paris Systèmes et scripts B. Perret TP : Shell Scripts 1 Remarque générale Lorsque vous cherchez des informations sur Internet, n'oubliez pas que langage de shell script que nous avons vu correspond

Plus en détail

Calculateur quantique: factorisation des entiers

Calculateur quantique: factorisation des entiers Calculateur quantique: factorisation des entiers Plan Introduction Difficulté de la factorisation des entiers Cryptographie et la factorisation Exemple RSA L'informatique quantique L'algorithme quantique

Plus en détail

Cours Informatique Master STEP

Cours Informatique Master STEP Cours Informatique Master STEP Bases de la programmation: Compilateurs/logiciels Algorithmique et structure d'un programme Programmation en langage structuré (Fortran 90) Variables, expressions, instructions

Plus en détail

Premiers pas sur e-lyco

Premiers pas sur e-lyco Premiers pas sur e-lyco A destination des parents, ce document présente les premiers éléments pour accéder aux services de l'ent e-lyco d'un lycée. Que signifient ENT et e-lyco? ENT = Espace ou Environnement

Plus en détail

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Leçon 11 PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES Dans cette leçon, nous retrouvons le problème d ordonnancement déjà vu mais en ajoutant la prise en compte de contraintes portant sur les ressources.

Plus en détail

Complexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation

Complexité. Licence Informatique - Semestre 2 - Algorithmique et Programmation Complexité Objectifs des calculs de complexité : - pouvoir prévoir le temps d'exécution d'un algorithme - pouvoir comparer deux algorithmes réalisant le même traitement Exemples : - si on lance le calcul

Plus en détail

Traitement de texte : Quelques rappels de quelques notions de base

Traitement de texte : Quelques rappels de quelques notions de base Traitement de texte : Quelques rappels de quelques notions de base 1 Quelques rappels sur le fonctionnement du clavier Voici quelques rappels, ou quelques appels (selon un de mes profs, quelque chose qui

Plus en détail

Rapidolect Les Productions de la Columelle (1998-2006) Page 1

Rapidolect Les Productions de la Columelle (1998-2006) Page 1 Page 1 Page 2 Logiciel Rapidolect RATIONNEL DU JEU Un bon lecteur possède dans sa tête des images précises des mots écrits qu'il connaît. Lorsqu'il parcourt un texte, ses yeux se déplacent par saccades

Plus en détail

IV- Comment fonctionne un ordinateur?

IV- Comment fonctionne un ordinateur? 1 IV- Comment fonctionne un ordinateur? L ordinateur est une alliance du hardware (le matériel) et du software (les logiciels). Jusqu à présent, nous avons surtout vu l aspect «matériel», avec les interactions

Plus en détail

Une version javascript sera disponible directement dans le cours prochainement.

Une version javascript sera disponible directement dans le cours prochainement. Author : Cédric Vanconingsloo Ce cours est principalement axé sur la compréhension du fonctionnement d'un ordinateur et l'étude du seul langage qu'il connaisse, le binaire. De ce fait, le cours est relativement

Plus en détail

Algorithmique avec Algobox

Algorithmique avec Algobox Algorithmique avec Algobox Fiche 2 Cette fiche est la suite directe de la première. 1. Instructions conditionnelles : 1.1. Reprise de la fiche 1 : Lecture d'un algorithme : ORDINATEUR INTERDIT : Après

Plus en détail

avec des nombres entiers

avec des nombres entiers Calculer avec des nombres entiers Effectuez les calculs suivants.. + 9 + 9. Calculez. 9 9 Calculez le quotient et le rest. : : : : 0 :. : : 9 : : 9 0 : 0. 9 9 0 9. Calculez. 9 0 9. : : 0 : 9 : :. : : 0

Plus en détail

La valeur actuelle d'un élément de parc informatique

La valeur actuelle d'un élément de parc informatique La valeur actuelle d'un élément de parc informatique Propriétés Intitulé long Intitulé court Formation concernée Matière Présentation Notions du programme Description Exonet sur la gestion financière d'un

Plus en détail

Création d'un questionnaire (sondage)

Création d'un questionnaire (sondage) Création d'un questionnaire (sondage) Le but de ce petit tuto est d'avoir les séquences pas à pas pour la création d'un questionnaire de façon à ne pas devoir rechercher la manière de procéder si l'outil

Plus en détail

TP 1. Prise en main du langage Python

TP 1. Prise en main du langage Python TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer

Plus en détail

Comment Utiliser les Versions, les Modification, les Comparaisons, Dans les Documents

Comment Utiliser les Versions, les Modification, les Comparaisons, Dans les Documents Comment Utiliser les Versions, les Modification, les Comparaisons, Dans les Documents Diffusé par Le Projet Documentation OpenOffice.org Table des Matières 1. Les Versions...3 2. Les Modifications...5

Plus en détail

Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes.

Introduction. I Étude rapide du réseau - Apprentissage. II Application à la reconnaissance des notes. Introduction L'objectif de mon TIPE est la reconnaissance de sons ou de notes de musique à l'aide d'un réseau de neurones. Ce réseau doit être capable d'apprendre à distinguer les exemples présentés puis

Plus en détail

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère

Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère L'héritage et le polymorphisme en Java Pour signifier qu'une classe fille hérite d'une classe mère, on utilise le mot clé extends class fille extends mère En java, toutes les classes sont dérivée de la

Plus en détail

RapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/2011. 1.1 Présentation. 1.2 Ressources

RapidMiner. Data Mining. 1 Introduction. 2 Prise en main. Master Maths Finances 2010/2011. 1.1 Présentation. 1.2 Ressources Master Maths Finances 2010/2011 Data Mining janvier 2011 RapidMiner 1 Introduction 1.1 Présentation RapidMiner est un logiciel open source et gratuit dédié au data mining. Il contient de nombreux outils

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par

Plus en détail

Licence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter

Plus en détail

Manuel d'utilisation du client VPN. 9235967 Édition 1

Manuel d'utilisation du client VPN. 9235967 Édition 1 Manuel d'utilisation du client VPN 9235967 Édition 1 Copyright 2004 Nokia. Tous droits réservés. La reproduction, le transfert, la distribution ou le stockage d'une partie ou de la totalité du contenu

Plus en détail

les Formulaires / Sous-Formulaires Présentation...2 1. Créer un formulaire à partir d une table...3

les Formulaires / Sous-Formulaires Présentation...2 1. Créer un formulaire à partir d une table...3 Présentation...2 1. Créer un formulaire à partir d une table...3 2. Les contrôles :...10 2.1 Le contrôle "Intitulé"...11 2.2 Le contrôle "Zone de Texte"...12 2.3 Le contrôle «Groupe d options»...14 2.4

Plus en détail

Navigation dans Windows

Navigation dans Windows Cours 03 Navigation dans Windows Comme je le disais en introduction, notre souris se révèle plus maligne qu'elle n'en a l'air. À tel point qu'il faut apprendre à la dompter (mais c'est très simple, ce

Plus en détail

Guide de l'utilisateur

Guide de l'utilisateur BlackBerry Internet Service Version: 4.5.1 Guide de l'utilisateur Publié : 2014-01-08 SWD-20140108170135662 Table des matières 1 Mise en route...7 À propos des formules d'abonnement pour BlackBerry Internet

Plus en détail

Dans la série. présentés par le site FRAMASOFT

Dans la série. présentés par le site FRAMASOFT Dans la série Les tutoriels libres présentés par le site FRAMASOFT CRÉER DES EXERCICES AVEC JCLIC-AUTHOR Logiciel: JClic-author Plate-forme(s): Linux, Windows, Mac OS X Version: 0.1.1.9 Licence: GNU General

Plus en détail

Utiliser Access ou Excel pour gérer vos données

Utiliser Access ou Excel pour gérer vos données Page 1 of 5 Microsoft Office Access Utiliser Access ou Excel pour gérer vos données S'applique à : Microsoft Office Access 2007 Masquer tout Les programmes de feuilles de calcul automatisées, tels que

Plus en détail

Comment bien démarrer avec. NetAirClub GUIDE ADMINISTRATEUR V1.5. Table des matières

Comment bien démarrer avec. NetAirClub GUIDE ADMINISTRATEUR V1.5. Table des matières Comment bien démarrer avec NetAirClub GUIDE ADMINISTRATEUR V1.5 Table des matières 1 TELECHARGEMENT...3 2 PREMIERE CONNEXION...4 2.1 Paramétrage du temps d'inactivité...4 2.2 Création de votre fiche membre

Plus en détail

CRÉER UNE BASE DE DONNÉES AVEC OPEN OFFICE BASE

CRÉER UNE BASE DE DONNÉES AVEC OPEN OFFICE BASE CRÉER UNE BASE DE DONNÉES AVEC OPEN OFFICE BASE 2 ème partie : REQUÊTES Sommaire 1. Les REQUÊTES...2 1.1 Créer une requête simple...2 1.1.1 Requête de création de listage ouvrages...2 1.1.2 Procédure de

Plus en détail

PARCOURS COMPLET AU COURS MOYEN

PARCOURS COMPLET AU COURS MOYEN 81 I) UNE ENTAME DE TYPE "SOCIAL" : LE BUREAU DE POSTE Le bureau de poste de St Herblain Preux est récent. La classe de CM de l'école proche ("Les Crépinais") pouvait y découvrir divers aspects de l'informatique

Plus en détail

Manuel utilisateur logiciel Salles. Version 1.1

Manuel utilisateur logiciel Salles. Version 1.1 Manuel utilisateur logiciel Salles Version 1.1 juin 2015 Sommaire Accès au logiciel Salle...4 Se connecter au logiciel... 4 Configuration du planning...5 Personnaliser les éléments affichés sur le planning...

Plus en détail

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation

Travaux pratiques. Compression en codage de Huffman. 1.3. Organisation d un projet de programmation Université de Savoie Module ETRS711 Travaux pratiques Compression en codage de Huffman 1. Organisation du projet 1.1. Objectifs Le but de ce projet est d'écrire un programme permettant de compresser des

Plus en détail

CHAPITRE VIII : Les circuits avec résistances ohmiques

CHAPITRE VIII : Les circuits avec résistances ohmiques CHAPITRE VIII : Les circuits avec résistances ohmiques VIII. 1 Ce chapitre porte sur les courants et les différences de potentiel dans les circuits. VIII.1 : Les résistances en série et en parallèle On

Plus en détail

STAGE IREM 0- Premiers pas en Python

STAGE IREM 0- Premiers pas en Python Université de Bordeaux 16-18 Février 2014/2015 STAGE IREM 0- Premiers pas en Python IREM de Bordeaux Affectation et expressions Le langage python permet tout d abord de faire des calculs. On peut évaluer

Plus en détail

CRÉER UN COURS EN LIGNE

CRÉER UN COURS EN LIGNE Anne DELABY CRÉER UN COURS EN LIGNE Deuxième édition, 2006, 2008 ISBN : 978-2-212-54153-3 2 Que recouvre le concept d interactivité? Dans une perspective de cours en ligne, une activité interactive est

Plus en détail

PRÉPARER LA PREMIÈRE ÉPREUVE ORALE D ADMISSION OPTION EPS. DEVOIRS SUPPLÉMENTAIRES 1 et 2

PRÉPARER LA PREMIÈRE ÉPREUVE ORALE D ADMISSION OPTION EPS. DEVOIRS SUPPLÉMENTAIRES 1 et 2 CONCOURS DE RECRUTEMENT DE PROFESSEURS DES ÉCOLES PRÉPARER LA PREMIÈRE ÉPREUVE ORALE D ADMISSION OPTION EPS DEVOIRS SUPPLÉMENTAIRES 1 et 2 Rédaction Jean-Pierre GUICHARD Conseiller pédagogique en EPS Ministère

Plus en détail

Installation de Windows 2000 Serveur

Installation de Windows 2000 Serveur Installation de Windows 2000 Serveur Introduction Ce document n'explique pas les concepts, il se contente de décrire, avec copies d'écran, la méthode que j'utilise habituellement pour installer un Windows

Plus en détail

www.systhag-online.cm PREINSCRIPTION EN LIGNE

www.systhag-online.cm PREINSCRIPTION EN LIGNE UNIVERSITE DE DOUALA THE UNIVERSITY OF DOUALA www.systhag-online.cm PREINSCRIPTION EN LIGNE Guide de l'utilisateur Part. 1 (Mise à jour: 26 septembre 2012) 1 TABLE DES MATIERES I- AVANT DE COMMENCER 3

Plus en détail

Chapitre 1 I:\ Soyez courageux!

Chapitre 1 I:\ Soyez courageux! Chapitre 1 I:\ Soyez courageux! Pour ne rien vous cacher, le langage d'assembleur (souvent désigné sous le terme "Assembleur", bien que ce soit un abus de langage, puisque "Assembleur" désigne le logiciel

Plus en détail

Baccalauréat L spécialité, Métropole et Réunion, 19 juin 2009 Corrigé.

Baccalauréat L spécialité, Métropole et Réunion, 19 juin 2009 Corrigé. Baccalauréat L spécialité, Métropole et Réunion, 19 juin 2009 Corrigé. L usage d une calculatrice est autorisé Durée : 3heures Deux annexes sont à rendre avec la copie. Exercice 1 5 points 1_ Soit f la

Plus en détail

Définition : On obtient les nombres entiers en ajoutant ou retranchant des unités à zéro.

Définition : On obtient les nombres entiers en ajoutant ou retranchant des unités à zéro. Chapitre : Les nombres rationnels Programme officiel BO du 8/08/08 Connaissances : Diviseurs communs à deux entiers, PGCD. Fractions irréductibles. Opérations sur les nombres relatifs en écriture fractionnaire.

Plus en détail

Installation et Réinstallation de Windows XP

Installation et Réinstallation de Windows XP Installation et Réinstallation de Windows XP Vous trouvez que votre PC n'est plus très stable ou n'est plus aussi rapide qu'avant? Un virus a tellement mis la pagaille dans votre système d'exploitation

Plus en détail

Notice Générale - MODULE CLIENTS. I. Description générale du module. II. La liste des clients a. Accès

Notice Générale - MODULE CLIENTS. I. Description générale du module. II. La liste des clients a. Accès - MODULE CLIENTS L affichage peut être différent suivant votre paramétrage mais le principe reste le même. I. Description générale du module Le module clients permet: de constituer un annuaire des clients

Plus en détail

Automatisation d'une Facture 4. Liste Déroulante Remises Case à cocher Calculs

Automatisation d'une Facture 4. Liste Déroulante Remises Case à cocher Calculs Dans la série Les tutoriels libres présentés par le site FRAMASOFT Automatisation d'une Facture 4 Liste Déroulante Remises Case à cocher Calculs Logiciel: Version: Licence: Site: OpenOffice.org Calc :

Plus en détail

D'UN THÉORÈME NOUVEAU

D'UN THÉORÈME NOUVEAU DÉMONSTRATION D'UN THÉORÈME NOUVEAU CONCERNANT LES NOMBRES PREMIERS 1. (Nouveaux Mémoires de l'académie royale des Sciences et Belles-Lettres de Berlin, année 1771.) 1. Je viens de trouver, dans un excellent

Plus en détail

Mon Compte Epargne Temps (CET) : manuel utilisateur

Mon Compte Epargne Temps (CET) : manuel utilisateur Mon Compte Epargne Temps (CET) : manuel utilisateur Février 2012 Version : 1.0 Direction Informatique Version : 1.0 Date : Février 2012 Editeur : Rédacteurs : Copyright : Université de Strasbourg Sylvie

Plus en détail

La responsabilité civile et l'entreprise

La responsabilité civile et l'entreprise La responsabilité civile et l'entreprise Dans la présente rubrique, nous poursuivons notre étude de la responsabilité civile, cette fois-ci du point de vue d'un commerce ou d'une entreprise. Les questions

Plus en détail

YAPBA M. Logiciel libre de suivi de vos comptes

YAPBA M. Logiciel libre de suivi de vos comptes YAPBA M Logiciel libre de suivi de vos comptes Premières opérations A l'ouverture la première fois, on obtient cet écran. La première opération va être la création d'un compte. Comme aucun compte n'est

Plus en détail

1. Utilisation du logiciel Keepass

1. Utilisation du logiciel Keepass Utilisation du logiciel Keepass L'usage de mots de passe est nécessaire pour de nombreux accès ou pour la protection de données personnelles. Il convient d'en utiliser plusieurs, suivant le type d'accès

Plus en détail

CORRECTION EXERCICES ALGORITHME 1

CORRECTION EXERCICES ALGORITHME 1 CORRECTION 1 Mr KHATORY (GIM 1 A) 1 Ecrire un algorithme permettant de résoudre une équation du second degré. Afficher les solutions! 2 2 b b 4ac ax bx c 0; solution: x 2a Solution: ALGORITHME seconddegré

Plus en détail

Cours 1 : Qu est-ce que la programmation?

Cours 1 : Qu est-ce que la programmation? 1/65 Introduction à la programmation Cours 1 : Qu est-ce que la programmation? Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr Université Paris Diderot Paris 7 2/65 1. Sortez un appareil qui peut se rendre

Plus en détail

KeePass - Mise en œuvre et utilisation

KeePass - Mise en œuvre et utilisation www.rakforgeron.fr 08/04/2015 KeePass - Mise en œuvre et utilisation L'usage de mots de passe est nécessaire pour de nombreux accès ou pour la protection de données personnelles. Il convient d'en utiliser

Plus en détail

L informatique en BCPST

L informatique en BCPST L informatique en BCPST Présentation générale Sylvain Pelletier Septembre 2014 Sylvain Pelletier L informatique en BCPST Septembre 2014 1 / 20 Informatique, algorithmique, programmation Utiliser la rapidité

Plus en détail

IMPORTATION, CRÉATION, MANIPULATION, EXPORTATION DE DONNÉES STATISTIQUES

IMPORTATION, CRÉATION, MANIPULATION, EXPORTATION DE DONNÉES STATISTIQUES IMPRTATIN, CRÉATIN, MANIPULATIN, EXPRTATIN DE DNNÉES STATISTIQUES Bernard Dupont Bernard.Dupont@univ-lille1.fr ahm.bahah@yahoo.fr Bien que l'analyse et le traitement des données ne soient pas sa vocation

Plus en détail

Fiche animateur : module écriture collaborative

Fiche animateur : module écriture collaborative Fiche animateur : module écriture collaborative Rédactrice : Isabelle Cailleau Sous-titre Niveau collège I. Objectifs pédagogiques du module Ce module doit permettre aux collégiens de comprendre comment

Plus en détail

COPIER, COUPER, COLLER, SELECTIONNER, ENREGISTRER.

COPIER, COUPER, COLLER, SELECTIONNER, ENREGISTRER. COPIER, COUPER, COLLER, SELECTIONNER, ENREGISTRER. 1. Comment déplacer ou copier un fichier sur Windows Vous aurez régulièrement besoin de déplacer ou dupliquer des fichiers sur votre ordinateur. Par exemple

Plus en détail

Votre appareil est configuré en usine pour permettre d'envoyer immédiatement des SMS.

Votre appareil est configuré en usine pour permettre d'envoyer immédiatement des SMS. Généralités SMS (messages texte) Votre appareil est configuré en usine pour permettre d'envoyer immédiatement des SMS. Conditions : u La présentation du numéro associée à votre ligne téléphonique est active.

Plus en détail

LES NOMBRES DECIMAUX. I. Les programmes

LES NOMBRES DECIMAUX. I. Les programmes LES NOMBRES DECIMAUX I. Les programmes Au cycle des approfondissements (Cours Moyen), une toute première approche des fractions est entreprise, dans le but d aider à la compréhension des nombres décimaux.

Plus en détail

VM Card. Manuel des paramètres des fonctions étendues pour le Web. Manuel utilisateur

VM Card. Manuel des paramètres des fonctions étendues pour le Web. Manuel utilisateur VM Card Manuel utilisateur Manuel des paramètres des fonctions étendues pour le Web 1 Introduction 2 Écrans 3 Paramètres de démarrage 4 Info fonctions avancées 5 Installer 6 Désinstaller 7 Outils administrateur

Plus en détail

SOMMAIRE. Travailler avec les requêtes... 3

SOMMAIRE. Travailler avec les requêtes... 3 Access Les requêtes SOMMAIRE Travailler avec les requêtes... 3 A) Créer une requête sélection en mode QBE... 3 B) Exécuter une requête à partir du mode Modifier (QBE)... 3 C) Passer du mode Feuille de

Plus en détail

La sauvegarde (backup) de votre comptabilité a pour but de vous permettre de retrouver vos données si un incident est survenu.

La sauvegarde (backup) de votre comptabilité a pour but de vous permettre de retrouver vos données si un incident est survenu. Logiciels concernés Ciel Compta Premium, Evolution et Réseau. Depuis la version 10.xx jusqu'à la version 13.xx Sauvegarde Remarque préliminaire La sauvegarde (backup) de votre comptabilité a pour but de

Plus en détail

2. RAPPEL DES TECHNIQUES DE CALCUL DANS R

2. RAPPEL DES TECHNIQUES DE CALCUL DANS R 2. RAPPEL DES TECHNIQUES DE CALCUL DANS R Dans la mesure où les résultats de ce chapitre devraient normalement être bien connus, il n'est rappelé que les formules les plus intéressantes; les justications

Plus en détail

TRUECRYPT SUR CLEF USB ( Par Sébastien Maisse 09/12/2007 )

TRUECRYPT SUR CLEF USB ( Par Sébastien Maisse 09/12/2007 ) TRUECRYPT SUR CLEF USB ( Par Sébastien Maisse 09/12/2007 ) Voici un petit document concernant d'un espace crypté sur une clef usb en utilisant le logiciel TRUECRYPT. Ce dernier est gratuit et disponible

Plus en détail

Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies

Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies Régis Boulet Charlie Demené Alexis Guyot Balthazar Neveu Guillaume Tartavel Sommaire Sommaire... 1 Structure

Plus en détail

Cryptologie à clé publique

Cryptologie à clé publique Cryptologie à clé publique La cryptologie est partout Chacun utilise de la crypto tous les jours sans forcément sans rendre compte en : - téléphonant avec un portable - payant avec sa carte bancaire -

Plus en détail

1. Introduction...2. 2. Création d'une requête...2

1. Introduction...2. 2. Création d'une requête...2 1. Introduction...2 2. Création d'une requête...2 3. Définition des critères de sélection...5 3.1 Opérateurs...5 3.2 Les Fonctions...6 3.3 Plusieurs critères portant sur des champs différents...7 3.4 Requête

Plus en détail

Guide de démarrage rapide

Guide de démarrage rapide Guide de démarrage rapide 1 Sommaire 1.Préambule...3 2.Démarrage du programme...4 3.Prise en main...6 3.1.Les saisies...6 3.2.Les listes...10 4.Gestion courante...13 4.1.Saisie d'un devis...13 4.2.Transformation

Plus en détail

La mémoire. Un ordinateur. L'octet. Le bit

La mémoire. Un ordinateur. L'octet. Le bit Introduction à l informatique et à la programmation Un ordinateur Un ordinateur est une machine à calculer composée de : un processeur (ou unité centrale) qui effectue les calculs une mémoire qui conserve

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

Messages d'erreurs. Redémarrez votre PC en cliquant sur Démarrer, en sélectionnant ensuite Arrêter puis en cochant Redémarrer

Messages d'erreurs. Redémarrez votre PC en cliquant sur Démarrer, en sélectionnant ensuite Arrêter puis en cochant Redémarrer Messages d'erreurs Erreur 602 Vous essayez de vous connecter à Internet. L'erreur n 602 apparaît et il vous est impossible de vous connecter. L'erreur 602 est souvent issue de l'utilisation de l'accès

Plus en détail

Le générateur d'activités

Le générateur d'activités Le générateur d'activités Tutoriel Mise à jour le 09/06/2015 Sommaire A. Mise en route du Générateur d'activité... 2 1. Installation de Page... 2 2. Création des bases du générateur d'activités... 3 3.

Plus en détail