Correction d`examen

Transcription

Correction d`examen
Ecole SITI
Rue des Crayères
BP 1034, 51687 REIMS Cedex 2
tel 03 26 36 80 20
Correction d’examen
Année universitaire 2012 - 213
Unité d’enseignement
Code de l’UE
NFA074
Intitulé
Conception d’un site web
Enseignant (s)
A. RENARD
Examen
Session
09/02/2013
Date
1ère session
Horaires
13h15-15h15
Durée
2 heures
Consignes particulières
Pour cette épreuve, vous avez le droit uniquement à vos supports de cours ainsi qu’à vos documents
personnels. Aucun livre ou autre document n’est autorisé.
Vous répondrez aux exercices 1 à 3 directement sur le sujet que vous devez impérativement rendre
avec votre copie.
Chaque exercice présente une indication du barème et du temps nécessaire à sa résolution.
Vos codes devront respecter les instructions du cours.
En cas de problème durant l’épreuve, joindre le Cnam Champagne-Ardenne au 03 26 36 80 07,
03.26.36.80.10 ou 03.26.36.80.20.
EVA PR01 F05
Version 02
1/6
Exercice1–Questionsdecours(15%):
A. Définissez le W3C, son rôle et un exemple concret de ce qu’il peut apporter au développeur.
Le W3C est un consortium qui a pour but de normaliser les technologies liées au web, dont HTML, CSS et
javascript. D’où son nom, Word Wide Web Consortium
A titre d’exemple concret, le W3C propose un outil de validation (syntaxe, encodage, DOM, … ) de page html
B. Listez quels sont les outils nécessaires au développement d’un site en HTML – CSS – Javascript.



Un éditeur (avec coloration syntaxique, complétion, auto indentation, ftp …)
Des navigateurs (plusieurs, de plusieurs versions, et les plugins pour développer comme « web
developper » pour Firefox
Un système de validation de type W3C
Exercice2–QCM(15%):
Répondez directement sur le sujet
1. Quel est le code HTML permettant de créer un lien ?
A. <a>http://ne.pleiad.net </a>
B. <a href="http://ne.pleiad.net">Site du CNAM</a>
C. <a name="http://ne.pleiad.net</a>
D. <a url=" http://ne.pleiad.net">Site du CNAM</a>
2. Lesquelles parmi ces balises sont des balises de définition des tableaux ?
A. <thead><body><tr>
B. <table><tr><tt>
C. <table><head><tfoot>
D. <table><tr><td>
3. Les balises et le texte qui ne sont pas visibles directement sur une page HTML (par exemple le titre)
doivent être placées dans :
A. Le corps de la page (Balise body)
B. L’en-tête de la page (Balise head)
C. Les tableaux (Balise table)
4. Quelle balise provoque un retour à la ligne ?
A. <nl/>
B. <NEWLINE/>
C. <br/>
D. <hr/>
5. Quel est le rôle de la balise <titre> ?
A. écrire en grand
B. centrer un titre
C. définir le titre du document
6. Quelle balise introduit une liste numérotée ?
A. <ln>
B. <ol>
C. <listnum>
D. <h1>
7. Quel est le rôle de la balise <body> ?
A. écriture en plus petit
B. début de paragraphe
C. liste à puces
D. corps du fichier
NFA074
2/6
09/02/2013
8. Quelle est la couleur représentée par #ffffff ?
A. blanc
B. noir
C. gris clair
D. gris foncé
9. Parmi les lignes de code HTML suivantes, laquelle permet de décrire la liste à puces ci-dessous ?
• Fruits
o Banane
o Fraise
• Legumes
A. <ul><li>Fruits</li><ul><li>Banane</li><li>Fraise</li></ul><li>Legumes</li></ul>
B. <ul><li>Fruits<ol><li>Banane</li><li>Fraise</li></ol></li><li>Legumes</li></ul>
C. <ul><li>Fruits<ul><li>Banane</li><li>Fraise</li></ul></li><li>Legumes</li></ul>
D. <ul><li>Fruits<ul><li>Banane</li></ul></li><li>Fraise</li><li>Legumes</li></ul>
Exercice3–Créationd’unepageweb(25%):
Afin de réaliser la page web ci-dessous :
A. Directement sur le sujet, identifiez et décrivez les éléments (balises) HTML présents
NFA074
3/6
09/02/2013
B. Ecrivez le code html et les règles CSS liées du contenu du bloc avec la bordure en pointillés.
#blocDroite{width:550px;float:left;border:5px dotted #333333;padding:10px;}
.souligne{text-decoration:underline;}
.important{font-weight:bold}
.etrange{font-style:italic;}
.c1{color:#ff0000;}
.c2{color:#0000ff;}
.c3{color:#00ff00;}
<div id='blocDroite'>
<h1>Mon ...</h1>
<p>J'ai eu la chance... <span class='etrange'>excellent,</span> puis ...</p>
<ul>
<li>Du ... <span class='souligne'>J'adore</span>)</li>
<li>Du ...</li>
<li>De la ...</li>
<li>Une ...</li>
</ul>
<p>Et le tout ... <span class='important'>Champagne !</span></p>
<p>Après ...</p>
<div style='text-align:center;'>
<ol>
<li>Mamie ... <span class='c1'>des ...</span></li>
<li>Mamie ...<span class='c2'>des ...</span></li>
<li>Tonton ...<span class='c3'>des ...</span></li>
</ol>
</div>
</div>
NFA074
4/6
09/02/2013
Exercice5–Javascript(25%):
En javascript :
 Math.random() retourne un nombre aléatoire entre 0 et 1
 Math.round( floatvalue ) retourne la partie entière du nombre qu’on lui passe en paramètre
A. Ecrire la fonction aleatoire(n) qui retourne un entier aléatoirement entre 0 et n
// fonction pour générer un nombre entier aléatoire entre 0 et n
function aleatoire(n){
// génération d'un nombre flottant (à virgule) entre 0 et 1
r = Math.random();
// en le multipliant par n, j'ai donc un nombre flottant (à virgule) entre 0 et n
r = r * n;
// je ne garde que la partie entière
r = Math.round(r);
// je retourne la valeur
return r;
// version en une seule ligne
return Math.round(n*Math.random());
}
B. Ecrire le code javascript qui génère un entier aléatoire de 0 à 100 puis demande au visiteur de le
deviner. A chacune de ses propositions, une indication « trop grand » ou « trop petit » est fournie à
l’internaute. Une fois la valeur trouvée, un message le lui indique ainsi que le nombre d’essais.
x = aleatoire(100);// génération d'un nombre entier de 0 à 100
count=1;// initialisation du nombre d'essais à 1
p = prompt("Proposez un nombre"); // premier essai
while(p!=x){ // on va demander jusqu'a ce que la valeur proposée soit la bonne
if(p<x)
alert("Trop petit");
else
alert("Trop grand");
count++;// incrémentation du nombre d'essais à 1
p = prompt("Proposez un nombre"); // nouvel essai
}
alert("Trouvé en "+count+" essais");
NFA074
5/6
09/02/2013
Exercice6–JavascriptetDOM(20%):
A. Ecrire la fonction virus() qui va procéder à une permutation circulaire des url des liens contenus sur
la page en cours.
function virus(){
// récupération de tous les a du documents
liens = document.getElementsByTagName("a");
// on conserve le valeur de l'attribut href du premier lien pour l'attribuer au dernier en fin de parcours
prem = liens[0].href;
// permutation : attribuer à chaque lien le href du suivant (sauf pour le dernier)
for(i=0;i<liens.length-1;i++)
liens[i].href=liens[i+1].href;
// prem est la valeur de l'attribut href du dernier lien
liens[liens.length-1].href = prem;
}
B. Cette fonction est déclenchée automatiquement toutes les 20 secondes, dès le chargement de la page.
function doVirus(){
// appeler la fonction virus
virus();
// appeler la fonction doVirus de nouveau dans 20 secondes
setTimeout("doVirus()",20000);
}
<body onload='doVirus()'>
NFA074
6/6
09/02/2013

Documents pareils