• Aucun résultat trouvé

aucun document autorisé 3 juillet

N/A
N/A
Protected

Academic year: 2022

Partager "aucun document autorisé 3 juillet "

Copied!
22
0
0

Texte intégral

(1)

L~

552, Réseaux, Deuxième session Juin 201$"

La précision et la clarté de votre rédaction sont fondamentales. Respectez les notations des exercices. Aucun document autorisé. Durée 2 heures.

On suppose qu'un serveur web, un serveur de mail et un serveur telnet fonctionnent sur la machine Isis. uni v= t Ln . fr sur lem port standard. Que se passe-t-il lors de l'exe- cution de la commande suivante?

tcan: # telnet Isis.uuiv-tln.fr 25

Décrivez le modèle OSI et mettez en parrèlle la pile des protocoles internet. Pam chaque couche vous donnerez un exemple de protocole (son nom et une description en une phrase).

A quoi sert le protocole ARP?

Comment SSB permet de savoir que l'on se connecte à la bonne machine? Comment ssh pennet ele s'authentifier sans qu'un mot de passe ne circule sur le réseau?

Soit le réseau suivant - un seul dns : 10.1.65.1

- la machine tcan.univ-tIn.fr:

ethO Lien eneap:Ethernet HWaddr OO:11:2F:49:14:2D

inet adr:10.2.177.179 Beast:10.2.183.255 Masque:255.255.248.0 La passerelle par défaut de cette machine est. 10.2.176.1

(HWaddr OO:Ol:30:10:CB:20) la machine sis. uni v -t.Ln . fr :

ethO Lien eneap:Ethernet HWaddr OO:OC:6E:D2:Bl:54

inet adr: 10.2.177 .108 Beast: 10.2.183.255 Masque: 255.255.248. O La passerelle par défaut de cette machine est 10.2.176.1

(HWaddr OO:Ol:30:10:CB:20) - lamachinemaitinfoll.univ-tln.fr

ethO Lien eneap:Ethernet HWaddr OO:OE:A6:B5:77:30

inet adr:l0.9.185.227 Beast:l0.9.191.255 Masque:255.255.248.0 La passerelle par défaut de cette machine est 10.9.184.1

(HWaddr OO:Ol:30:10:CB:20)

Expliquer tout ce qui se passe depuis l'exécution d'une commande réseau jusqu'à l'établissement de la connexion tep. On suppose que la machine vient d'être allu- mée et que tous les caches sont vides. Vous illustrerez vos explications en utilisant la commande suivante :

sis: # ssh bruno@tcan.univ-tln.fr

Vous indiquerez détaillerez le mode de connexion proposé par TCP.

On suppose que la machine vient d'être allumée et que tous les caches sont vides.

Expliquer les différences entre l'exécution de la commande précédente et la suivante:

sis: # ssh bruno@maitinfo11.univ-tln.fr

Faire un schéma du réseau (incluant les passerelles). Expliquer comment les paquets arrivent à destinations. Vous préciserez en particulier quelle est l'adresse Ethernet des paquets à destination de l'adresse IP de mai t inf a 11.

TCP et la fiabilité: Comment fonctionne le mécanisme d'acquittement des données proposé par TCP? Qu'est-ce que le fenêtrage?

Est-ce qu'un utilisateur de la machine LSIS peut connaitre les adresses MAC des machines tcan et maitinfoll ? Si oui comment?

Décrivez (avec un schéma et urie petit explication par machine) un réseau comme celui utilisé en TP. Pour chaque machine vous donnerez sa ou ses adresses IP, son rôle et la liste des serveurs et des clients installés. Votre réseau devra avoir avoir une machine cliente et une serveur (avec les services de base) ainsi que toutes les machines nécessaire au fonctionnement du réseau. Le client et le serveur seront dans des réseaux séparés.

(2)

Preuve et Analyse des Algorithmes

09:00-11:00

aucun document autorisé 3 juillet

201

5

Q 1. Pour un entier

n,

on note

L

p 1

p<n p premier

1. Comparer Sn et

u;

2. Estimer H¿ en fonction d'une primitive de ~.

3. En déduire que Sn

=

O(log

n).

4. Peut-on affirmer que Sn = 8 (log

n)

?

Q

2. Soient m et

n

deux entiers positifs. On note d leur PGCD. Démontrer que 2d - 1 divise le PGCD de 2m - 1 et 2n - 1.

Q

3. Dessiner un graphe orienté d'ordre 9 ayant trois composantes fortement connexes, mais qui, sans tenir compte des orientations, ne possède qu'une seule composante connexe.

Q

4. On note

.6.

le plus grand diviseur commun à a

=

4301 et b

=

1547 1. Tracer les étapes de l'algorithme d'Euclide pour obtenir

.6..

2. Utiliser un algorithme d'Euclide étendu efficace vu en cours pour déterminer deux entiers relatifs u et v tel au

+

bv

= .6..

1 typedef unsigned int uint;

2

3 int get (

uint

n,

uint *

t )

4 { 5 uint v;

6 v = t [ n / sizeof (uint) ];

7 v

»=

n

%

sizeof (uint) ; 8 return v

&

1;

9 }

boole.c

Q

5. Le crible d'Eratostène permet de dresser la liste des nombres premiers inférieurs à un entier donné

n.

1. Ecrire l'algorithme du crible d'Era- tostène.

2. Préciser le temps de calcul en fonction de n.

3. Implanter l'algorithme en langage C.

4. Préciser la quantité de mémoire uti- lisée.

Q 6. Observer la source boole . c La fonc- tion get (n, t) permet de consulter le bit d'indice n dans un tableau

t

d'entiers non signés. Ainsi, suivant l'architecture cible, trOJ contient les 16, 32, ou 64 premiers bits.

1. Ecrire une fonction bi t (n, t ) qui change-I-'@tat-Gu-git-G-'-illG-iG@-n-.

2. Comment utiliser ces fonctions dans l'implantation du crible?

3. Quel est l'intérêt de cette approche?

1

(3)

Département d'Informatique Université de Toulon

153 - Systèmes d'exploitation, processus - Session 2

Aucun document autorisé - durée 2h

Lundi 22 juin 2015

Ne pas oublier de commenter et expliquer/justifier si des choix sont faits. Bien décrire les objets et le rôle de ceux-ci (et utiliser des noms explicites si possible).

Exercice 1: (1,5 points)

Soient un programme A et une variable X initialisée à 1. Répondez aux 4 questions suivantes : 1. Un nouveau processus est-il créé si le programme A fait un appel:

(a) à l'instruction fork?

2. Un nouveau processus est-il créé si le programme A fait un appel:

(a) à l'instruction exec?

3. Si le programme A contient la séquence d'instructions suivante: fork O; printf ("%d\n" ,X) ; que sera-t-il affiché dans le terminal à l'exécution du programme?

(a) rien

(b) une fois "I"

(c) deux fois "I"

4. Si le programme A contient la séquence d'instructions suivante:

execlp("echo", "echo", "Hi", NULL); printf("%d\n" ,X);

que sera-t-il affiché dans le terminal?

(a) rien (b) juste "Hi"

(c) juste "I"

(d) autre

Exercice 2: (1,5 points)

Soient les structures suivantes:

struct structurel { char *mtext;

long mtype;

} ;

struct structure2 { long longueur;

float vecteur[255];

struct structure3 { long *a;

struct structure2 tab;

char c;

};

};

Indiquez pour chacune de ces structures si celle-ci est compatible en tant que structure d'un message pour un objet IPe de type file de messages? Justifiez votre réponse.

153 - Examen - Session 2 1/4 22/06/2015

(4)

Département d'Informatique Université de Toulon

Exercice 3: (4 points)

Soit le programme suivant:

#define N 1 int main(void) {

int i, pid, pidinit;

pidinit = getpid();

printf("pere de pid initial for (i = O; i < N; i++) {

pid=forkO;

printf("boucle num %d pid:%d\n", i, getpidO);

%d\n",pidinit); I I (a)

II (b) }

if (!pid) {

printf (" Je suis un fils, mon pid est %d\n", getpidO); I I (c) exit(O);

} else {

if (forkO) { forkO; forkO;

else {

forkC); forkC); forkC);

}

while Cwait CNULL) != -1); II Cd) return O;

}

1. Donnez les affichages obtenus à l'écran par l'exécution du programme précédent (vous supposerez que la valeur de "pidinit" obtenue lors de l'exécution du programme est l'entier 1234, et vous supposerez que les numéros des processus fils sont générés par ordre continûment croissant). Remarque : il y a bien sûr plusieurs ordres d'affichage possibles (et corrects) pour cette question.

2. Même question mais cette fois-ci, N

=

2.

3. Toujours pour N = 2, indiquez combien de processus ont été créés et donnez un arbre montrant les relations de filiation entre ces processus.

4. Expliquez à quoi sert l'instruction (d) ?

Exercice 4: (3 points)

Soit un système composé de 4 processus PO, Pl, P2 et P3 et de 4 types de ressources RO, RI, R2, R3. On dispose de 3 exemplaires de RO, 2 exemplaires de RI, 6 exemplaires de R2, et 1 exemplaire de R3.

Les conditions d'utilisation des ressources sont les suivantes:

PO possède 1 exemplaires de RO et demande 5 exemplaires de R2,

Pl possède 1 exemplaire de RI et demande 2 exemplaire de RO et 1 exemplaire de R2, P2 possède 1 exemplaire de RI et 1 exemplaire de R2 et demande 2 exemplaire de R3, P3 possède 1 exemplaire de R3 et demande 1 exemplaire de RI et 1 exemplaire de R2 Question 4.1:

Donner le graphe d'allocation des ressources pour le système décrit ci-dessus. Réduisez le graphe et dites s'il y a interblocage.

153 - Examen - Session 2 2/4 22/06/2015

(5)

Département d'Informatique Université de Toulon

Question 4.2:

Vérifiez la conclusion que vous avez trouvée à la question l°) en appliquant l'algorithme du banquier:

vous donnerez le contenu de la matrice C des allocations courantes, de la matrice R des demandes de ressources, et du vecteur A du nombre de ressources actuellement disponibles, puis à chaque itération le nouveau contenu du vecteur A.

Indiquez s'il y a interblocage.

Exercice 5: (4 points)

Soient des doigts électroniques indépendants les uns des autres. Ces doigts doivent effectuer une mélodie simple sur des instruments de musique. Chaque doigt ne produit qu'une seule note, toujours la même.

Pour synchroniser les opérations, un métronome émet régulièrement les 4 temps d'une mesure, de manière indépendante des doigts. La composition est à 4 temps et la mélodie est la suivante : do, mi, sol, puis accord avec do-mi-sol en même temps. Cette mélodie est répétée continuellement. Il y a 4 processus : un processus Do, un processus Mi, un processus Sol et un processus Tempo. On suppose que la durée de positionnement et relâchement de la mécanique des doigts est négligeable et on ne tient pas compte de la durée des notes.

Proposez une solution à base de sémaphores et uniquement de sémaphores pour synchroniser ces mu- siciens (on supposera qu'un temps dure 1s). Ecrire le pseudo-code (pas du C) pour chacun des processus.

N'oubliez pas de décrire les différents objets de synchronisation que vous utilisez, leur type, leur initialisation et leur signification. Vous pourrez utiliser les fonctions suivantes : joue_do (), joue_mi (), joue_sol () et attend(ls) .

Exercice 6: (6 points)

L'objectif de cet exercice est d'écrire un programme effectuant des calculs vectoriels de manière pa- rallélisée en décomposant le calcul sur plusieurs processus (le calcul est supposé être indépendant sur chaque composante du vecteur). Plus précisément, un processus père traitera des vecteurs de dimension N et générera N processus fils qui effectueront chacun le calcul pour une composante particulière du vecteur. Dans cet exer- cice, l'opération sera simplement une multiplication élément par élément des deux vecteurs u = (UI, ... , UN) et V

=

(VI, ... , V N), w

=

(U l X VI, ... , U N X V N).

Afin d'effectuer ce calcul, le résultat sera placé dans un objet IPC de type zone de mémoire partagée entre tous les processus. Chaque processus n'y mettra que son résultat partiel au bon endroit.

Pour rappel, un tableau n'est qu'un vecteur de N éléments. Les différents objets IPC utiliseront une clé privée.

Question 6.1:

Compléter le programme suivant pour inclure TOUTES les instructions manquantes afin qu'il réalise ces opérations de calcul, d'écriture et de lecture dans la zone de mémoire partagée (indiquer les lignes d'insertion de votre code ou tout ré-écrire). Vous pouvez définir des fonctions si besoin.

l #define N 3 /* dimension du vecteur et nombre de processus */

2 int main(void) { 3 int shmid, i, pid;

4 int u[N], v[N], *w;

5 srand(getpid()*time(NULL));

6 /* initialisation des vecteurs u et v */

7 for (i=O; i < N; i++) { 8 u[i] randO%10;

9 v[i] = randO%10; }

153 - Examen - Session 2 3/4 22/06/2015

(6)

Département d'Informatique Université de Toulon

lO

1*

génération des processus fils pour effectuer le calcul

*1

Il for (i=O; i< N; i++) { 12 if ((pid = forke)) == O) {

13 }

14 }

15 while (wait (NULL) != -1);

16

1*

affichage du vecteur résultat

*1

17 for (i = O; i < N; i++)

18 printf("%d: %d + %d = %d\n", i, u[i], v[i], w[i]);

19 }

Question 6.2:

Le programme doit maintenant réaliser l'addition de chacun des éléments du vecteur résultant de la multiplication. Pour cela il doit faire appel à un programme externe qui lit sur l'entrée standard une suite de nombre puis affiche sur la sortie standard la somme de ces nombres. Le code source de ce programme est inconnu et donc non modifiable. Le programme s'appelle sum.

Compléter le programme précédent afin que le processus père créé un nouveau processus fils qui va lire le vecteur résultat et écrire chaque élément du vecteur dans un tube. Puis, il lira dans un autre tube un entier.

Question 6.3:

Compléter le programme précédent afin d'exécuter le programme sum.

Question 6.4:

Compléter le programme précédent pour que la sortie du tube soit redirigée vers l'entrée standard du processus sum et que la sortie du programme sum soit elle aussi redirigée vers l'autre tube, que le processus fils lira. Enfin, le processus père affichera ce résultat.

Question 6.5:

Le programme précédent présente un risque de désynchronisation des calculs, c'est-à-dire que les calculs de la somme pourrait être effectuée avec des valeurs non encore disponibles. Pour palier ce problème proposer une solution avec un sémaphore et compléter le code de votre programme pour implanter cette solution.

153 - Examen - Session 2 4/4 22/06/2015

(7)

l S ~ U nix et Programmation Shell

22 juin 2015

Vous répondrez aux questions en utilisant deux lignes en moyenne.

Q 1. Donner une commande pour compter les lignes vides du fichier faa?

Q 2. Que décrit la section 1 du manuel unix.

Q 3. Le chercheur McIlroy a inventé un concept fondamental du système unix. Lequel?

Q 4. Que signifie l'acronyme CLI?

Q 5. Commenter.

~~ :~l~;~i;r$PS~~~S~$p~rv'

Q 6. Quel est le résultat de la commande

Q 14. Quelle est l'utilité de la commande wget?

Q 15. Que fait le script

4 5 6 done

Q 16. Que fait la commande:

Q 7. Donner un exemple d'appel système im- Q 17. Quelle est l'utilité de la variable PATH?

pliqué dans une redirection.

Q 8. Donner un exemple d'appel système im- pliqué dans un pipeline.

Q 18. Deviner le résultat de la commande

~lsI'7,,]:'~_;ea ....

id_3_--;; ....

~¡¡¡,..: _ ... ~_ ... _~

Q 9. Quelle est la particularité du binaire Q 19. La commande ssh permet d'ouvrir un /bin/passwd? shell sur un hôte distant. Que signifie l'acronyme

SSH?

Q lO. La commande qui suit affiche une liste de

fichiers dont / etc/resol v . conf. Pourquoi? Q 20. Expliquer

Q 11. Quelle différence entre fclose et close?

Q 12.

Comment effacer le fichier?

Q 13. Deviner le résultat de la commande:

Q 21. Quel est le résultat de

Q 22. Que fait la commande

1

(8)

execve (" / bin/bash. . . ,=~

open.I," / et)çjld. so. cache", O.RDONLY) = 3 li

open(" /dev/tty", O.RDWRIO.NONBWCKIO..LARGEFILE) = 3 open(" /proc/meminfo", O.RDONLY) :;= 3

read(3, "MemTotal: 508520 kB\nMemF" ... , 1024) 1024

r; clone (Process 2325 attached

[p id 2324] clone (Process 2326 attached

, [pid 2324] clone (Process 2327 attached

9 [pid 2327] dup2(4, O) O

[p id 2326] dup2 (3, O) O

[p ìd 2326] dup2(.5, 1) 1

u [pid 2327] open(" /tmp/count", O_WRONLYIO_CREATIO~TRUNCI O..LARGEFILE, 066

ii [piâ 2327] dup2(3, 1) = l

il [pid 2327] execve (" / usr ¡bin/wc", [" wc", "-c"], [/

*

52 vars * /l) = O

[pid 2325] dup2(4, l) = 1

[p.id 2326] execve

C" /

bini cat", [" cat"], [/

*

52 vars

* /I)

= O

,7 [p id 2325] execve("jbin/echo", ["jbin/écho", "hello", "world"],

[/*

52

'" [pid 2327] open (" / etc / Id . so. cache", O.RDONLY) 3

i'; [pid 2326] open("jetc/ld,so.cache", OJUX)NLY) 3

[pid 2325] open("/etc/ld.so.cache", O.RDONLY) 3

"[pid 2325] < ... open resurned > ) 3

[p id 2326] read (O, <unfinished ... >

[p id 2327] < ... open resumed> ) 3

," [pid 2327] read (3, "# Locale name alias data base. \n#" ... , 4096) 2512

x' [pid 2325] write(l, "hello world\n", 12 <unfinished ...

>

[pid 2327] read (3, <unfinished ... >

[pid 2325] < write resumed> ) = 12

" [pi d 2326] < read resumed> "hello world \n", 32768) 12

[pid 2326] w r i t e í L, "hello world\n", 12) = 12

", [p id 2326] read(O, "", 32768) == O

[pid 2327] < ... read resumed> "", 4096) = O

;} [pid 2327] read (O hello world \n", 16384) 12

Ti [p id 2327] read (O, "", 16384) = O

il [pid 2327] write(l, "12\n", 3) = 3

E {sLsigno~IGCHLD, sLcode;=CLD...EXITED, sLp ì d =2326, sL s ta t us =0, s i ,

FIG. 1 - traces d'une commande.

Q 23. Que fait la commande

et celui de la commande

Q 24. Donner le temps d'exécution de la com-

mande Q 25. Ecrire un script pour calculer n!.

Q 26. Le script ci-dessous a été utilisé pour obtenir les traces de la figure ( 1).

- Combien de processus ont été lancés?

- Quelle commande a été tracée?

2

(9)

Université du Sud Toulon-Var, UFR des Sciences et Techniques, Département d'Informatiqu~ _~ _ LICENCE SCIENCES POUR L'INGENIEUR - L3

EXAMEN DE S61- PROGRAMMATION ORIENTEE OBJET Durée 2h - Documents non autorisés - Mai 2015

Cet exercice s'intéresse, parmi les travailleurs d'une entreprise, à la catégorie particulière des commerciaux et aborde, de façon très simplifiée, quelques aspects de leur travail. Il est recommandé de commencer par lire attentivement le sujet jusqu'à la question 4) en regardant tout particulièrement la trace d'exécution fournie dans cette question.

1) La classe Travailleur est ainsi définie:

Les données membres sont: id (identité du travailleur) de type string et salaire (salaire mensuel) de type float.

Exemple] : On appelle trav le travailleur dont id vaut "Dupond" et salaire vaut 1500.

Les fonctions membres sont: un constructeur sans argument, un constructeur à 2 arguments, un constructeur de recopie, un modificateur Modsalaire et une fonction Alfic d'affichage.

Une classe Commercial qui hérite de la classe Travailleur sera définie dans une question ultérieure.

Questions

a) Quel doit être le statut des données membres de Travailleur pour que les fonctions membres de Commercial y aient accès? Pourquoi n'y-a-t-il pas de destructeur ?

b) Ecrire le fichier d'extension h et celui d'extension cc de la classe Travailleur.

2) On s'intéresse au montant des achats d'un client (désigné par son nom) pendant le mois en cours et au montant de ceux réalisés auparavant c'est-à-dire depuis la création du client.

Ecrire le fichier d'extension h et celui d'extension cc de la classe Client ainsi définie:

Les données membres sont: nom (string), cumul (float) qui mémorise le montant des achats du client avant le mois en cours et encours (float) qui mémorise le montant de ses achats pendant le mois en cours.

A sa création, le client n'a rien acheté.

Le premier jour de chaque mois (après la création du client), le montant des achats du mois précédent est ajouté à celui de cumul puis encours est mis à O.

Les fonctions membres sont:

- un constructeur sans argument et un constructeur qui a pour seul argument le nom du client.

- des accesseurs Getnom, Geteumul et Geieneours

- une méthode Acheter qui prend en argument le montant de l'achat et met à jour encours - une méthode Ajour qui met à jour cumul et encours le premier jour du mois

L'affichage d'une instance de Client est fait en surchargeant l'opérateur d'écriture «~o

3) On considère que chaque commercial possède (dès sa création) un certain nombre de clients mais qu'à la création du commercial ces clients n'ont encore rien acheté. En outre, chaque mois le commercial touche une prime. Cette prime est nulle jusqu'à la fln du premier mois. Pour chacun des autres mois, elle prend, dès le premier jour du mois, une valeur égale à 7% du montant des ventes réalisées pendant le mois précédent.

Ecrire le fichier d'extension h et celui d'extension cc de la classe Commercial ainsi définie:

Elle hérite de la classe Travailleur avec, en outre, les données membres prime, n (qui désigne le nombre de clients du commercial) et tab (vecteur dynamique de taille n d'instances de la classe Client).

Exemple] : On appelle corn l'instance de Commercial construite à partir du travailleur trav (de l'Exemple]) et dont le vecteur tab a trois éléments: ell de nom "Vinci", cl2 de nom "Dali" et cl3 de nom "Gogh".

Les fonctions membres sont:

- un constructeur sans argument, un constructeur à 3 arguments (l'identité, le salaire et le nombre de clients), un constructeur à 4 arguments et un constructeur de recopie

- un destructeur

- une fonction A/fic qui affíche toutes les données d'une instance de Commercial

- une méthode Vendre qui prend en argument le nom d'un client qui figure dans tab et le montant de son achat et qui met à jour tab

- une fonction Ajour qui fait toutes les mises àjour qui ont lieu d'être le premier jour du mois - une surcharge de l'opérateur d'affectation

- une surcharge de l'opérateur + qui retourne l'instance de Commercial obtenue en ajoutant un nouveau client à l'objet courant

- une fonction Best qui retourne le meilleur client du mois, c'est-à-dire le premier client rencontré dans tab qui a le plus grand montant d'achats dans le mois courant.

Ce n'est pas terminé, il faut tourner la page!

(10)

4) Ecrire un programme qui:

.~~~- I:il'é~lljflstanee=eom~det'ommerciaFddk~em:utetpfrIs~I'afficro·

- réalise successivement des ventes de 800 Euros auprès de "Gogh", 500 Euros auprès de "Vinci", 1100 Euros auprès de "Gogh", 700 Euros auprès de ''Dali'', 1000 Euros auprès de "Dali", 900 Euros auprès de "Vinci".

- lit le nom d'un nouveau client cl4

- réalise une vente de 1200 Euros auprès de cl4 - afliche com

- affiche le meilleur client du mois - appelle Ajour

- affiche com

Indication: Trace de l'exécution du programme ci-dessus Commercial com:

Identité: Dupond - Salaire: 1500 Prime: O

Nom: Vinci - Cumul: O - Encours: O Nom: Dali - Cumul: O - Encours: O Nom: Gogh - Cumul: O - Encours: O Entrer un nom: Monet

Commercial com après ventes:

Identité: Dupond - Salaire: 1500 Prime: O

Nom: Vinci - Cumul: O - Encours: 1400 Nom: Dali - Cumul: O - Encours: 1700 Nom: Gogh - Cumul: O - Encours: 1900 Nom: Monet - Cumul: O - Encours: 1200

Meilleur client du mois: Nom: Gogh - Cumul: O - Encours: 1900 Commercial com le premier jour du mois:

Identité: Dupond - Salaire: 1500 Prime: 434

Nom: Vinci - Cumul: 1400 - Encours: O Nom: Dali - Cumul: 1700 - Encours: O Nom: Gogh - Cumul: 1900 - Encours: O Nom: Monet - Cumul: 1200 - Encours: O

QUESTION DE COURS

1) Donner la déclaration de la classe générique Point dont les coordonnées sont de type T avec un constructeur à 2 arguments et une fonction d'affichage.

2) Implanter la fonction d'affichage.

3) Ecrire un programme qui crée une instance p, d'abscisse 47.5 et d'ordonnée 100, de cette classe et qui J'affiche.

(11)

Examen de Compilation

L3

Licence Sciences Pour Ingénieur

25 juin 2015

Le sujet est composé d'exercices indépendants. Aucun document n'est autorisé. Durée de l'épreuve: Ox78 minutes. La présentation de la copie entre en compte dans la note finale.

1 Expression régulière

1 #!jbinjbash

2

#

stupid prime generator

3 reg='~(xx+)\l+$' ; y=xx ; cpt=

$1

4 while [[ cpt -gt Oll; do

5 if [[ ! $y =- $reg ll; then

6 echo -n' '${#y}

7 let cpt--

8 fi

9 y=x$y

lO done

Le script utilise une commande grep basée sur une expression rationnelle étendue conte- nant une référence arrière. Une fonctionalité dé- crite dans man 7 regex.

REDEX(7) Manuel du programmeur Linux

( 1\ regex - Expressions

r a t i o n n e II e s POSIX. 2 l liC l

la référence arrière: «\» suivi a'un chiffre décimal non-nul n correspond à la même séquence de caractères que ceux mis en

correspondance

avec la n-ième sous-expression entre parenthèses. (les sous-expressions

sont

numérotées par leurs parenthèses ouvrantes, de gauche à droite),

ainsi «([bc})\l» correspond à « bb»

ou « cc » mais pas à « be ».

1. Que représentent les caractères spéciaux 1\ et $ dans une expression régulière?

2. Décrire le langage L des mots correspondants au motif (a+ )\1.

3. Préciser la nature, régulier, algébrique, de L.

4. Commenter le résultat de la commande ci-dessous.

exam> time . / prime. sh lO 2 3 5 7 11 13 17 19 23 29 real OmO.209s

user OmO.187s sys OmO.002s

1

(12)

TAB. 1 - Les 8 instructions de BFM

symb mnémo. ignification codage

> INC incrémente le pointeur ptr++

<

DEC décrémente le pointeur ptr--

+

ADD incrémente l'octet pointé mem[ptr]++

SUB décrémente l'octet pointé mem[ptr]-- OUT sortie de l'octet pointé putchar(mem[ptr]) 7 IN entrée d'un octet mem[ptr]=getchar()

LOOP saut si O aprés ] while ( mem [ptr] ) {

RET retour vers [ }

2 Théorie des Langages

On considère l'alphabet A

=

{O, I}. Pour tout langage X, on note p(X) les mots de X qui ont une longueur paire :

p(X)

=

{x E X

Ilxl ==

O mod 2}.

1. Montrer que si X est rationnel alors p(X) est rationnel.

2. La réciproque est fausse, donner un contre-exemple.

3. Construire l'automate des mots binaires de longueur paire qui représentent un multiple de trois.

3 gee-flex

Le langage BF est un langage minimaliste qui s'appuie sur un modèle de machine composé d'un tableau d'octets MEM (initialisés à O), d'un pointeur PTR sur le tableau et de deux files d'octets pour les entrées et sorties. La machine gère les huit opérations décrites par la table [1].

Un programme en langage BF est une suite d'octets: >, <,

+,

-,7,!, [ et ] qui sont interprétés, les espaces et les caractères situés à droite d'un' j'sont ignorés.

%{

#include <stdio .h>

void prologue ( void ) {

puts('#include <stdio.h>\ntypedef unsigned char uchar;\n\

uchar mem[1024]={O};\n int ptr=O;\nint maine void) {\n\

p r ì n tf'{Vt br a ì nf e e » vl.O\\n\') ;');

}

void epilogue ( void ) {

puts('puts(\'eoj\\n\') ;return O;}');

}

%}

%%

[ ]+

\n

%%

2

(13)

int main( void {

prologue () ; yylex () ; epilogue

O;

return O;

}

I I I I I I I I "

[ ; Boucle ini tiale qui affecte des valeurs utiles au tableau MEM ) I I I I I I I:> I I I I I I I I I 1>+++>+««-

;A la sortie de la boucle le tableau de la machine contient:

>++! ;'H' 72 (70 plus 2)

>+! ; 'e' 101 (100 plus 1)

I I I I I I I! ; , l ' 108 (101 plus 7)

! ; , l ' 108

+++! ; 'o' 111 (108 plus 3)

>++! ; espace

=

32 (30 plus 2)

«III II III II III II! ;'W 87 (72 plus 15)

>! ; 'o' = 111

+++! ; 'r' 114 (111 plus 3)

---! ; , I ' 108 (114 moins 6)

; 'd' 100 (108 moins 8)

>+! . '! '

,

33 (32 plus 1)

>! ;nouvelle ligne

=

lO

hw.bf

1. Comment compiler bftoc . l pour obtenir un exécutable bftoc. exe ?

2. Quel est le résultat de bftoc. exe appliqué à un fichier (entrée standard) vide?

3. Compléter le fichier bftoc. l pour obtenir un traducteur en flex du langage BF vers le langage C.

4. Préciser comment (compilations comprises) exécuter le progamme hw. bf.

3

(14)

162, Interface homme-machine

20 mai 2015

La précision et la clarté de votre rédaction sont fondamentales. Chaque réponse doit être accornpagnèe d'une justification, dans le cas contraire elle sera purement et simplement ignorée. Le barême est donné à titre indicatif.

Durée 2 h.

Exercice 1. [5 pts) Interaction et ergonomie

1. [1 pt) Le modèle du processeur humain peut trouver diverses applications. Soient les trois configurations de plaques de cuisson suivantes:

rnJ "

.. ,'

••

•• ••

Quel modèle de plaque de cuisson vous paraît-il le plus ergonomique? Pourquoi?

2. [1,5 pts) Des concepteurs de systèmes interactifs sont tentés d'augmenter le nombre d'éléments dans un menu afin d'afficher toutes les options en une seule fois à condition que la taille de l'écran le permette.

Présenter trois stratégies (sur trois lignes maximum chacune) pour organiser l'af- fichage des 101 départements français et les justifier par rapport aux tâches réalis- ables et aux connaissances des utilisateurs.

3. [2,5 pts) On vous propose le schéma général d'organisation d'écran suivant :

"'''"

81

~ .. Zlm_,,_.., 11I""_._0_, à_lect_.· ~_"'_ÓP_IÌ<l_""_C_"" ~

zone de ~,lMion i

(1) Enoncer les points qui vous paraissent a priori satisfaisants. Pourquoi?

(2) Enoncer les points qui ne vous paraissent pas satisfaisants. Pourquoi '? Proposer une autre organisation générale d'écran.

Problème 1. Traitement de séquences nucléiques en tkinter (15 pts)

Extrait de wikipédia : une séquence biologique est généralement un fichier informa- tique au format texte contenant la séquence d'une macromolécule biologique, il s'agit d'un fichier contenant l'information génétique brute.

Dans le cas d'une séquence d'ADN, le "texte" est une suite formée uniquement de 4 lettres correspondant aux quatre nucléotides formant l'enchainement de l' ADN : A pour adénine, G pour guanine, T pour thymine, C pour cytosine.

Extrait d'une séquence biologique d'ADN pour le gène Antennapedia CG1028-RH de Drosophila melanogaster :

TTCAGTTGTGAATGAATGGACGTGCCAAATAGACGTGCCGCCGCCGCTCGATTCGCACTT ...

On se propose de développer un prototype d'interface qui permet à l'utilisateur de rentrer sa séquence ADN puis d'effectuer un certain nombre de traitements dessus .

1. [2 pts] Dialogue

Ecrire la procédure qui affiche une boîte de dialogue permettant à l'utilisateur de rentrer une séquence dans une zone de saisie sous la forme d'une suite de lettre A, G, T ou C. On supposera que la saisie ne peut dépasser 128 caractères.

2. [4 pts] Gestion des erreurs.

Dans cette première procédure, traiter à la volée la conversion en majuscule de tout caractère tapé ainsi que le cas de la saisie d'une séquence erronée i.e sì la lettre tapée n'est pas dans l'ensemble {AGTC}, celle-ci sera ignorée.

Indications: mettre en place pour cela un binding du widget Entry sur l'évènement

<KeyRelease> (le caractère correspondant à la touche est mémorisé dans la variable event. char).

Décrire en quelques lignes le mécanisme qui pourrait être mise en place pour assurer un retour d'informations dans le cadre de la saisie d'un caractère erroné.

3. [2 pts] Fichier

Ajouter la possibilité de lire une séquence depuis un fichier texte. Celui-ci com- portera uniquement une longue suite de caractères composés des lettres A, G, T et C. On supposera que le fichier ne comporte aucun caractère erroné.

4. [4 pts) Gmphisme.

Développer une procédure qui affiche Ia séquence ADN mémorisée sous la forme d'une suite de lignes de 16 carrés de couleur, chaque nucléotide étant d'une couleur différente, avec en alternance une suite de ligue de caractères rappelant chaque nu- cléotide.

(15)

¡"P"""!"'!"'¡,

¡ ••••••••••••••••.

,TGGACGTGCCAAATAG!

! •••••••••••••••• ,

ACGTGCCGCCGCCGCT'

1...

¡

~GATTCGCACTT

¡

Indications: la gestion arithmétique des indices x et y se fait à partir de la longueur de la chaîne de caractères et de la largeur du widget Canvas (de nom cany par exem- ple). Les carrés de couleur sont créés par l'instruction canv. create_rectangle(xi, yi, x2, y2, fill=couleur) et le caractère sous jacent associé par l'instruction canv.create_text(x, y, text="bla bla bla", fill=couleur).

5. [3 pts] Reconnaissance d'une sous-séquence.

Ajouter la possibilité pour l'utilisateur de rechercher une sous-séquence ADN, composée d'une suite de caractères supposés valides (on ne fera pas de vérification dans cet exercice) et de mettre en évidence dans la zone graphique la sous-séquence trouvée si elle existe.

Indications : la recherche en elle-même est très simple en utilisant l'instruc- tion chaine. find(motif) qui renvoie l'indice du caractère débutant le motif dans la chaîne de caractères (par exemple ch="AABBCDD"; ch.first("BBC") retourne l'indice 2) et -1 en cas d'échec. La mise en évidence graphique de la sous-séquence est la point délicat de la question.

(16)

162, Interface homme-machine 26 juin 2015

La précision et la clarté de votre rédaction sont fondamentales. Chaque ré- ponse doit être accompagnée d'une justification, dans le cas contraire elle sera purement et simplement ignorée. Le barême est donné à titre indicatif.

Durée 2 h.

Exercice 1. [5 pts) Conception

1. [1 pt) Expliquer l'intérêt de construire un prototype lors de la conception d'un système interactif.

2. [2 pts) Expliquer en terme d'ergonomie (utilisabilité) les mérites respectifs de la manipulation directe et des langages de commandes. Pour cela, citer au moins deux intérêts et deux inconvénients (critères d'ergonomie vérifiés et transgressés) pour la manipulation directe et pour les langages de commandes. Justifier votre réponse.

3. [2 pts) Il y a quelques mois, la SNCF a changer son affichage sur les quais franciliens.

Donner deux avantages (critères d'ergonomie vérifiés) de cette nouvelle présentation des informations. Justifier votre réponse.

AVANT

,

06:55

Haussmann St Lazare _!i®HOCI

APRÈS

,

Exercice 2. [7 pts) Tracé d'un segment dans un éditeur de dessin

L'éditeur de dessin considéré comporte deux zones: une palette et une zone de dessin.

La palette contient des boutons donnant accès aux outils de tracé. L'utilisateur clique par exemple sur le bouton «segment» dans la palette (segment, rectangle, cercle, ... ).

Un premier appui sur le bouton gauche de la souris détermine la première extrémité du segment, cette extrémité sera invariable. On déplace alors la souris, le bouton gauche restant enfoncé. Une demi droite «élastique» suit le curseur de la souris. Lorsqu'on

relâche le bouton de la souris, le segment est dessiné. En cliquant à nouveau dans la zone de dessin, l'utilisateur peut créer un autre segment.

1. [3 pts) Décrire la création de segments à l'aide de deux tableaux (en suivant l'exemple cì-dessous), l'un gérant le choix d'un tracé dans la palette et l'autre la création d'un segment. Pour ce dernier, indiquer quelles sont les droites à tracer pour chaque évènement en précisant les extrémités de ces droites.

Exemple: sélection d'un fichier

I

Action de l'utilisateur Retour d'information (feedback) Etat interne clic sur une icône mise en surbrillance de l'icône cliquée sélection

=

fichier

les autres icônes ont un aspect neutre

2. [2 pts) En fin de déplacement de la souris, on relâche le bouton souris. Il doit yavoir alors le tracé du trait. Ecrire la procédure tkinter à employer dans ce cas.

3. [2 pts) Principe du feedback: à l'approche du curseur sur un trait déjà tracé, ce dernier voit sa couleur modifiée (en rouge par exemple). Lorsque le curseur quitte le trait, il doit retrouver sa couleur d'origine. Ecrire en tkinter les bindings correspon- dants.

Exercice 3. [4 pts) Conception d'un équivalent électronique aux "Post-It", des rectangles de papier partiellement adhésifs qui sont utilisés comme pense-bêtes.

1. [2 pts] Modèle de l'utilisateur

Le scénario d'utilisation d'un bloc de "Post-It" papier retenu est le suivant: l'uti- lisateur dispose d'un bloc de "Post-It" papier, suite à une conversation téléphonique, il souhaite laisser un "Post-It" papier sur l'écran de son collègue de bureau lui disant de rappeler son agence de voyage. Identifier pour ce scénario d'utilisation de vrais

"Post- It", les étapes mentales et physiques de l'utilisateur.

2. [2 pts) Conception ergonomique

Le système retenu doit offrir les fonctionnalités suivantes : création, édition, im- pression et destruction d'un "Post-It", sauvegarde automatique, association d'une alarme en option avec chaque "Post-It", recherche d'un "Post-It" et édition des pré- férences.

Pour chaque principe ergonomique associé aux interfaces graphiques (manipula- tion directe, cohérence, concision, retour d'informations, structuration des activités, flexibilité et gestion des erreurs), donner un exemple associe à cette application par- ticulière.

Exercice 4. [4 pts) Gestion de l'affichage

On considère un écran ayant 8 bits par pixel et utilisant une table de couleurs. On dispose d'images codées en 16 niveaux de gris en mode direct. On veut utiliser la table des couleurs pour réaliser un fondu-enchaîné entre deux images. Pour cela on affiche les

(17)

2

deux images simultanément à l'écran en utilisant les 4 bits de poids faible de chaque pixel pour l'image 1 (notée Il) et les 4 bits de poids fort pour l'image 2 (notée 12),

1. [1 pt] Donner la configuration de la table de couleurs:

- pour voir seulement l'image 1 (resp. seulement l'image 2),

- pour voir la combinaison h

+

(1 - t) . h, avec t E [O, l], t un flottant.

2. [3 pts] On déduire un algorithme pour afficher le fondu enchaîné. On utilisera la fonction SetLUT (entry, grey) pour affecter une entrée de la table de couleurs de l'écran (entry: indice de l'entrée, grey: niveau de gris dans l'intervalle [O, 255]) et la fonction GetLUT(entry) qui retourne le niveau de gris correspondant à l'indice entry.

(18)

Examen 163

Bases de données relationnelles

Les supports de cours ne sont pas autorisés.

Durée :

2

heures

Exercice 1

On considère la base de données suivante qui contient des informations sur la gestion d'un camping (placement de vacanciers et location de sports - tennis, vtt et autre - qu'ils peuvent exercer pendant leur séjour).

Cette base de données décrit les emplacements proposés par le camping. Chaque emplacement est identifié par un numéro, il a une certaine surface, il n'accepte qu'un nombre maximum de personnes, il est d'un certain type (tente, caravane, bungalow) et il servira

à

différents groupes de vacanciers tout au long de la saison. A chaque groupe accueilli au camping, on associe un numéro de client, on note le nom d'un des clients du groupe, la date de début de séjour, le nombre de personnes concernées et le numéro d'emplacement où ce groupe a été installé. Différents sports sont proposés aux vacanciers à l'unité de location.

Chaque sport est affiché à un certain tarif pour cette unité de location. Il est aussi stocké le nombre d'unités de chaque sport loué par un groupe de vacanciers (sur l'ensemble de son séjour).

Emplacement (numEmpl, #numCl, surface, nbPersMax, type) Client (numCl, nomClient, debutSejour, nbPers)

Location(#numCl,#nomSport,uniteLocation,tarifUnite,nbUnitesLouées)

1. Rappelez la définition d'une clé primaire et d'une clé étrangère.

2. Cette base de données est en réalité mal construite car elles présentent des anomalies de redondances d'informations. Lesquelles?

3. Proposez une nouvelle version de cette BD sans anomalies.

4. Donnez les expressions algébriques correspondant aux requêtes suivantes sur la version de BD corrigée

à

la question

3.

a) Donnez le nom des sports non loués à ce jour

b) Donnez le nom des clients installés dans un bungalow; indiquez le nombre de personnes du groupe de ce client.

Exercice 2

Soit la base de données d'un cabinet d'architectes contenant les relations suivantes:

Batiment(idBat, adresse)

Etage(#idBat, numEtage, surfaceEtage)

Local (idLocal, #idBat, #numEtage, typeOccup, surfaceLocal) Les trois tables satisfont les contraintes suivantes:

- Les attributs des clés primaires sont soulignés, les clés étrangères précédées d'un

#.

(19)

- Le numéro d'étage est un entier dans l'intervalle

[-3,

120].

- La surface d'un étage et d'un local est un décimal avec deux chiffres après la virgule.

- Le type d'occupation est une chaîne de caractère de longueur variable avec une longueur maximale de 32 caractères.

- Tous les attributs saufies surfaces doivent être renseignés au moment de l'insertion d'un n- uplet.

- Le schéma garantit l'intégrité référentielle entre toutes les tables.

1. Écrire la commande SQL pour la création de la table

Etage.

2. Ecrire une requête SQL, sous la forme d'une vue, qui compte le nombre de locaux actuellement répertoriés sur chaque étage.

3. Modifier la structure de la table

Etage

pour rajouter une colonne

nbLocaux

qui permettra de stocker le nombre de locaux à l'étage; initialiser sa valeur à

o.

4. En utilisant la vue de la question 2, écrire une requête SQL pour mettre

à

jour automatiquement la colonne

nbLocaux

dans la table

Etage.

5.

Afin de ne pas mettre à jour la base manuellement à chaque fois que l'on ajoute un nouveau local à un étage, créer un déclencheur/trigger et sa fonction PL/PGSQL qui incrémentent le nombre de locaux de l'étage concerné lorsqu'on ajoute un nouveau local dans la table

Local.

Exercice 2

Soit le schéma relationnel d'une Société Fictive d'Archéologie! qUI gère des trésors archéologiques et des articles scientifiques sur ces trésors :

OBJET (numObjet, description, type, datation, etatConservation,

#numSite, #numMusee)

VILLE (numVille, ancienNom, nomActuel) MUSEE(numMusee, #numVille, nomMusee)

SITE (#numVille, numSite, descriptionSite, civilisation) ARTICLE (numA, titre, date)

AUTEUR (numAuteur, nomAuteur, prenomAuteur) COOPERATION (#numAuteur, #numA)

REFERENCE (#numA, #numObjet)

La relation OBJET décrit les objets proprement dits avec l'indication de leur type (par exemple

vase, frise),

de leur datation (par exemple

moyen-âge, premier siècle),

de leur état de conservation (par exemple

partie I au total),

du site où ils ont été découverts et du musée où ils se trouvent actuellement. La relation VILLE comprend deux noms pour les villes ayant un nom historique comme par exemple

Byzance - Constantinople

(les deux noms sont identiques

Extrait de Bases de données: objet & relationnel, G. Gardarin, Eyrolles, 1999

(20)

si le nom de la ville est resté le même) . La relation SITE indique la ville à laquelle se rattache le site identifié par un numéro. La civilisation d'un site est une grande catégorie comme

romaine, ou crétoise. Les articles sont la plupart du temps co-écrits et peuvent concerner plusieurs objets archéologiques.

Retrouvez le MEA dont ont été dérivées ces relations.

Exercice 4

On considère la relation Client Client(NumC, NomC, DépartementC)

Soit la liste des départements suivants: Allier, Indre, Cher, Paris, Jura, Ariège, Tarn, Aude, Aveyron, Doubs, Savoie, Meuse, Cantal, Arne, Loire

a) Quel est l'intérêt apporté par un index de type B+ arbre?

b) Construire un arbre B+ d' ordre 3 en considérant chaque nom de département comme une clé de recherche, l'insertion se fait dans le même ordre que celui de la liste. Ne faire apparaître dans les feuilles que les clés de recherche.

b) Avez-vous construit un index primaire ou secondaire? Quelle est la hauteur de l'arbre?

Exercice 5

En quoi consiste l'optimisation d'une requête SQL. Expliquez les différentes étapes de cette

optimisation et leur intérêt.

(21)

Licence 3 EEA

5.3

Propagation des ondes. Examen 2014-2015 - seconde session. Durée: 2 h

La calculatrice ainsi que les notes de cours sont interdites. Les quantités notées en gras dans les exercices sont des quantités vectorielles. Lorsque ces mêmes quantités vectorielles sont notées sans gras, c'est de leur norme dont il est question. (ex: dl =

Ildlll).

Le symbole x signifie le produit vectoriel. Les exercices valent tous deux lO points. Bon courage.

1 Fil fini chargé

On se place dans le repère cartésien direct (O, ex, ey). On considère un fil de longueur fini chargé uniformément et possédant une charge linéïque constante "(. Il est placé dans le vide à x = O et orienté selon l'axe ey comme représenté sur la figure cì-dessous:

Les angles

el

et

e

2 permettent de repérer les deux bouts du fil à partir d'un point M situé à une distance r du fil. On se propose de trouver l'expression du champ électrique créé au point M(r, O).

1. Rappeler l'expression générale d'un champ électrostatique cree a une distance r d'une charge ponctuelle q. On note EO la permittivité électrique du vide.

2. Donner l'unité de 'Y ainsi que l'expression liant une petite longueur de fil dy et la charge dq qu'il porte.

3. Représenter le champ élémentaire dEp(M) créé en M par un élément dy de charge dq situé au point P(O, y) du fil.

(22)

Propagation des ondes. Examen 2014-2015 - seconde session page 2

---~~---~

Licence 3 EEA 4. Donner les expressions de ses composantes dEx (M) et dEy (M) en fonction de fO, "i, P M, dy

et B B est l'angle (MO,MP).

5. En se rappelant que:

d(tan(B)) _ 2(B) _ 1 dB - 1

+

tan - cos2(B) Montrer que l'on peut écrire:

dEx(M)

=

"i cos(B)dB 47rfor

6. Donner l'expression de la composante selon ex du champ électrostatique total Ex(M) créé par le fil en fonction de fO, "i, r, BI et B2.

7. Retrouver l'expression du champ électrique créé par un fil infini. Que vaut Ey(M) dans ce cas et pourquoi ?

2 Force électromotrice d'induction

On se place dans le repère cartésien direct (O, ex, ey, ez) et on considère une spire conductrice rectangulaire représentée ci-après. Cette spire de dimensions a x L tourne par son axe milieu autour de l'axe ez à une vitesse angulaire constante w. On note B l'angle que fait le plan de la spire avec le plan (O, ex, ez) de telle manière que B

=

wt (B

=

O à t

=

O).

ez

Il règne dans l'espace un champ magnétique B constant tel que:

B

=

Bo ex (0.1)

1. Rappler la définition du flux d'un vecteur u à travers une surface S.

2. Calculer le flux cp de B à travers la spire en fonction de ses dimensions a et L, de Bo et de B. Pour ce faire, on calculera préalablement les composantes selon les axes ex et ey du vecteur élémentaire de surface dB de la section de la spire.

3. Rappeler la loi d'induction liant la variation temporelle du flux du champ magnétique

Yf

à travers un circuit fermé et la force électromotrice e(t) engendrée dans ce circuit fermé.

4. En déduire l'expression de la force électromotrice d'induction e(t) engendrée dans la spire en fonction de a et L, Bo, w et t.

5. Un système mécanique associé à la spire permet d'extraire de celle-ci une tension U telle que U(t)

=

le(t)l. Représenter les formes d'onde de e(t) et de U(t) en fonction du temps et calculer la moyenne temporelle de U(t).

Références

Documents relatifs

Sachant que la modélisation de la pièce est réalisée avec une conjecture « conception pour la configuration , justifier l’utilité du logiciel de reconnaissance

En utilisant l’assistant graphique du tableur, faire apparaître les points de coordonnées ( n ; un ) pour n entier naturel inférieur ou égal à 21.. Quelle formule

Question 4 En utilisant le mod` ele propos´ e et en consid´ erant que la distance de d´ emarrage correspond ` a la distance parcourue pour atteindre 99% de la vitesse maximale V

La chaîne d'énergie est donc constituée d'un moto-variateur synchrone autopiloté (moteur brushless) entraînant un palan associé à un réducteur qui donne son

Pour pouvoir utiliser le résultat d’une synthèse d’un correcteur continu dans une commande numérique un critère impose que la période d’échantillonnage soit telle

5.4 Par définition l’énergie de dissociation D de la molécule est l’énergie qu’il faut apporter pour briser la liaison, c’est-à-dire l’énergie qu’il faut apporté à M

Question 4 En utilisant le mod` ele propos´ e et en consid´ erant que la distance de d´ emarrage correspond ` a la distance parcourue pour atteindre 99% de la vitesse maximale V

L'entreprise envisage l'achat d'un nouveau Centre d'Usinage Horizontal CN DMC 55H duoBlOCK (Document Ressources DRS8 et DRS9) pour augmenter sa productivité. Question 11