Exercice 1 - Pages Perso
Transcription
Exercice 1 - Pages Perso
Exercices tableur niveau avancé – fonctions spéciales Département GEA – IUT Nîmes Exercice 1 : nombres romains La feuille de calcul à concevoir doit être capable de convertir un nombre écrit en chiffres romains en sa valeur décimale. Voici comment la feuille se présente : A B C 1 nombre romain = D X 2 valeur décimale = 544 3 valeur décimale de chaque chiffre = 500 10 4 plus grande valeur décimale à droite = 50 50 5 valeur décimale à considérer au final = 500 -10 6 correspondances : I 1 7 V 5 8 X 10 9 L 50 10 C 100 11 D 500 12 M 1000 D L E I F V G H I J K 50 5 50 1 5 -1 5 0 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 Le nombre romain à convertir est écrit en ligne 1 par l’utilisateur : chaque chiffre romain occupe exactement une cellule ; notre feuille ne peut donc traiter qu’un nombre romain composé d’au plus 10 chiffres, mais fonctionne pour tous les cas possibles. En ligne B2 se trouve le principal résultat calculé par la feuille de calcul : 544 est bien la valeur décimale du nombre romain DXLIV. Le reste du tableau montre les éléments utiles au calcul : à partir de la ligne 6 une liste présente toutes les lettres autorisées (1ère colonne) et leurs valeurs décimales associées (2ème colonne). Si l’utilisateur saisit un chiffre romain incorrect, il doit être ignoré. En ligne 3, les valeurs décimales de chaque chiffre romain de l’utilisateur sont reportées ; en ligne 4, pour chaque chiffre romain de l’utilisateur, le tableur recherche le chiffre de plus forte valeur à sa droite ; en ligne 5, on décide que la valeur décimale d’un chiffre saisi sera à ajouter au résultat final s’il n’existe à sa droite aucun chiffre de plus grande valeur que la sienne ; si par contre il existe à sa droite un chiffre de plus grande valeur (strictement), alors la valeur décimale du chiffre considéré devra être retranchée du résultat final. Le résultat en B2 est alors simplement la somme de tous les nombres en ligne 5. Pour l’exemple, la valeur décimale de DXLIV est donc 500-10+50-1+5, soit 544. On trouverait de même que MMXXXVIII vaut 2038, alors que CDIX vaut 409. a) Proposer une solution basée sur les fonctions de recherche RECHERCHEH ou V. b) Proposer une solution basée sur le couple de fonctions INDEX et EQUIV. Page 1 sur 4 niveau avancé – fonctions spéciales Exercices tableur Département GEA – IUT Nîmes Exercice 2 : service d’enseignement Un enseignant souhaite faire le bilan des heures d’enseignement qu’il a réalisées dans une année scolaire. Pour chacune de ses interventions, il note : La date et l’horaire de l’intervention, la nature du public (cursus) Le nombre d’heures passées, ainsi que leur nature : la nature est au choix des heures de travaux dirigés (TD), de cours (CM), de travaux pratiques (TP) ou de partiels (P). A B C D E 1 service statutaire = 192 h ETD service effectué = non 3 heures complémentaires = 0 4 Date Horaire Public Durée Nature 2 5 16/09/2008 8h-9h A1n 1 CM 6 16/09/2008 9h-16h A1n 6 TP 7 23/09/2008 8h-9h A1n 1 CM 8 23/09/2008 9h-16h A1n 6 TP 9 30/09/2008 8h-9h A1n 1 CM 10 30/09/2008 9h-16h A1n 6 TP 11 07/10/2008 8h-9h A1n 1 CM 12 07/10/2008 9h-16h A1n 6 TP 13 14/10/2008 8h-9h A1n 1 CM 14 14/10/2008 9h-16h A1n 6 TP 15 21/10/2008 8h-9h A1n 1 CM 16 21/10/2008 9h-16h A1n 6 TP Chaque enseignant est tenu de réaliser un service annuel d’enseignements (appelé service statutaire), c’est à dire un nombre minimum d’heures exprimées en heures équivalent TD (éqTD), sachant que : 1h TD = 1h éqTD 1h CM = 1,5h éqTD 1h TP = 2/3h éqTD 1h P = 1h éqTD Construire une feuille de calcul permettant de vérifier que cet enseignant a bien réalisé son service. Indiquer le nombre d’heures complémentaires qu’il a pu éventuellement dispenser (i.e. les heures en plus de celles prévues dans son service). Exercice 3 : suite de Syracuse a) Soit la feuille de calcul suivante : 1 2 3 4 A Nombre = Durée = Altitude = Vol = B 7 16 52 7 C D E F G H I L M N O P Q R S 22 11 34 17 52 26 13 40 20 10 5 16 8 4 2 1 4 Page 2 sur 4 J K Exercices tableur niveau avancé – fonctions spéciales Département GEA – IUT Nîmes L’utilisateur saisit un entier naturel n dans la cellule B1 ; définir les formules de B2 à B4 et de C4 à IV4 pour que : dans la zone B4:IV4 se trouve les valeurs successives, strictement positives, de la suite de Syracuse (Vi)i=0..+∞ associée au nombre n, aussi appelée vol de n, définie par : V0 = n Vk = Vk-1 2 si Vk-1 est pair et k non nul Vk = 1 + 3 Vk-1 si Vk-1 est impair et k non nul en B2 se trouve la durée du vol, c'est-à-dire le plus petit indice d tel que Vd=1 en B3 se trouve l’altitude du vol, c'est-à-dire la plus grande valeur de la suite Vi pendant la durée d du vol, autrement dit lorsque i est compris entre 0 et d. Dans l’exemple, les premières valeurs du vol du nombre 7 sont : 7, 22, 11, 34, 17, 52, 26, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1, 4, 2, 1, 4, 2, 1, 4, ... En effet, V0 = n = 7 ; V1 = 1+3V0 = 22, puisque V0 est impair ; V2 = V12 = 11, puisque V1 est pair ; etc… La durée du vol de 7 est 16, car V16=1, et aucun terme de la suite avant V16 ne vaut 1 ; son altitude est bien 52, plus grande valeur de V0, V1 … V16. Indication : pour différencier un calcul selon qu’un nombre x est pair ou pas, il suffit d’écrire une formule Excel du genre : SI( MOD( x ; 2 ) = 0 ; calcul si x est pair ; calcul si x est impair ) b) Le vol de 1 a pour durée 0 et altitude 1 ; étudier les vols des nombres 2 et 4 ; pour chacun, indiquer son altitude et sa durée ; que remarquez-vous1 ? Exercice 4 : classification dynamique de points Nous souhaitons mettre en place une feuille de calcul capable de classer n points d’une série (xi)i=1..n en k groupes, numérotés de 1 à k ; un exemple de cette feuille est présenté à la page suivante (n=16 et k=2), la valeur de k pouvant varier de 1 à 5 : en B1 est écrit le nombre de groupes souhaité k les valeurs des points sont inscrites en B3:B18, et leurs n° dans la suite en A3:A18 dans la colonne groupe initial (C3:C18) se trouve le n° du groupe auquel chaque point est rattaché avant classification ; cette affectation est arbitraire, et nous avons adopté le principe suivant : le premier point est 1 Une conjecture affirme que, quel que soit le nombre considéré, il existe toujours un terme de son vol qui vaut 1, donc que la durée de son vol est définie et finie ; cette conjecture, vieille de près de 80 ans, n’a toujours pas été ni prouvée, ni réfutée. Page 3 sur 4 Exercices tableur niveau avancé – fonctions spéciales Département GEA – IUT Nîmes toujours rattaché au groupe 1 ; pour les autres points, si g est le n° du groupe auquel est rattaché le point au dessus, alors le point au dessous est rattaché au groupe g+1, sauf si g=k, auquel cas le point du dessous est rattaché au groupe 1 ; par exemple, le point 4 est rattaché au groupe 2, car le point 3 est rattaché au 1 ; le point 9 est rattaché à 1, car le point 8 est rattaché à 2. tous les groupes sont listés dans la zone E2:I2 pour chaque groupe listé dans la zone E2:I2 est calculée la moyenne arithmétique des points dont le groupe initial coïncide avec le groupe considéré ; chaque moyenne est appelée le centre du groupe en D3:D18, pour chaque point est indiqué le n° du groupe dont le centre lui est le plus proche (si x est un point et c un centre, leur distance est |x-c|). Ecrire toutes les formules des zones calculées ; vous pouvez exploiter toutes les lignes et colonnes libres. Rappel : la fonction ABS(x) permet de calculer |x|, la valeur absolue de x. Page 4 sur 4