Examen de Fin de Formation Eléments de correction I – XML II

Transcription

Examen de Fin de Formation Eléments de correction I – XML II
OFPPT
Office de la Formation Professionnelle
et de la Promotion du Travail
Direction Recherche et Ingénierie de Formation
Examen de Fin de Formation
Session Juin 2009
Filière : TSDI - TDI
Epreuve : Théorique
Niveau : Technicien Spécialisé
Durée : 4 h 30
Barème : 20 Pts
Eléments de correction
I – XML
Distinguez les noms XML corrects des noms incorrects et corrigez les erreurs.
1.
<Drivers_License_Number>98 NY 32</Drivers_License_Number> : Correct
2.
<Driver's_License_Number>98 NY 32</Driver's_License_Number> : Incorrect
(apostrophe)
3.
<month-day-year>7/23/2001</month-day-year> : Correct
4.
<first name>Alan</first name> : Incorrect (présence d'un espace)
5.
<àçttûä>øåú</àçttûä> : Correct
6.
<month/day/year>7/23/2001</month/day/year> : Incorrect (à cause des /)
7.
<_4-lane>I-610</_4-lane> : Correct
8. <4-lane>I-610</4-lane> : Incorrect (un nom XML ne commence pas par un chiffre)
II – RESEAUX INFORMATIQUES
Voir cours
1/5
III – ANALYSE & MODELISATION
1.
2/5
2.
3/5
IV – PROGRAMMATION
Exemple de code en C# :
class Cylinder
{
public double GetRayon()
{ double rad;
Console.Write("Rayon : ");
rad = double.Parse(Console.ReadLine());
return rad; }
public double GetHauteur()
{ double h;
Console.Write("Hauteur : ");
h = double.Parse(Console.ReadLine());
return h;
}
public double CalculateBaseArea(double rad)
{ return rad * rad * Math.PI; }
public double CalculateLateralArea(double rad, double hgt)
{
return 2 * Math.PI * rad * hgt;
}
public double CalculateTotalArea(double rad, double hgt)
{
return 2 * Math.PI * rad * (hgt + rad);
}
public double CalculateVolume(double rad, double hgt)
{
return Math.PI * rad * rad * hgt;
}
}
static void Main(string[] args)
{
double Rayon, Hauteur;
double BaseArea, LateralArea, TotalArea;
double Volume;
Cylinder p1 = new Cylinder();
Console.WriteLine("Entrer les dimensions du cylindre : \n");
Rayon = p1.GetRayon();
Hauteur = p1.GetHauteur();
BaseArea = p1.CalculateBaseArea(Rayon);
LateralArea = p1.CalculateLateralArea(Rayon, Hauteur);
TotalArea = p1.CalculateTotalArea(Rayon, Hauteur);
Volume = p1.CalculateVolume(Rayon, Hauteur);
Console.WriteLine("Les caractéristiques de votre cylindre sont : ");
Console.WriteLine("Rayon : {0}", Rayon);
Console.WriteLine("Hauteur : {0}", Hauteur);
Console.WriteLine("Surface : {0:F}", BaseArea);
Console.WriteLine("Syrface Laterale : {0:F}", LateralArea);
Console.WriteLine("Survace Totale :{0:F}", TotalArea);
Console.WriteLine("Volume : {0:F}", Volume);
}
4/5
V – PROCÉDURES STOCKÉES
Soit le modèle relationnel suivant :
1.
select * from Client where exists
(select * from Commande
where IdClient=Client.IdClient and Quntité>250 and exists
(select * from Facture
where datefacture between '01/01/2006'and '31/12/2008'and
NumCommande=Commande.NumCommande ))
2.
@somme money output
as
select @somme = sum(PrixTotal)
from Commande
if @somme < 1000
print 'La société va fermer ses portes.'
else
---SELECT 'La société a réalisé ' + convert (varchar(20), @somme)+' F' as PrixTotal
select @somme as SommeRéalisé
go
declare @P money
5/5