Unité d Enseignement en Informatique Année 2008-2009 Avril 2009



Documents pareils
INTRODUCTION A JAVA. Fichier en langage machine Exécutable

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP

NFA016 : Introduction. Pour naviguer sur le Web, il faut : Naviguer: dialoguer avec un serveur web

ALGORITHMIQUE ET PROGRAMMATION En C

PHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)

Compléments de documentation Scilab : affichage de texte et formatage de nombres

Corrigés des premiers exercices sur les classes

Programmation Web. Madalina Croitoru IUT Montpellier

Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004

Algorithmique et Programmation, IMA

CREATION WEB DYNAMIQUE

Présentation du langage et premières fonctions

TD3: tableaux avancées, première classe et chaînes

Cours 1: Java et les objets

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

OCL - Object Constraint Language

Programmation Objet - Cours II

Licence Bio Informatique Année Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

IN Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

Modélisation PHP Orientée Objet pour les Projets Modèle MVC (Modèle Vue Contrôleur) Mini Framework

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Document Object Model (DOM)

SHERLOCK 7. Version du 01/09/09 JAVASCRIPT 1.5

Formulaire pour envoyer un mail

Chapitre 10. Les interfaces Comparable et Comparator 1

Sommaire : Pourquoi créer un site web? Qu est-ce qu un site Web? Les différents types de sites. Quelles solutions peuvent être employées?

Logiciel de Base. I. Représentation des nombres

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

HTML. Notions générales

Cahier Technique. «Développer une application intranet pour la gestion des stages des étudiants» Antonin AILLET. Remi DEVES

Introduction au langage C

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

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.

.. CSS. Damien Nouvel. Damien Nouvel (Inalco) CSS 1 / 15

Serveur d'application Client HTML/JS. Apache Thrift Bootcamp

LES TYPES DE DONNÉES DU LANGAGE PASCAL

Programmation en Java IUT GEII (MC-II1) 1

Chap III : Les tableaux

TP JAVASCRIPT OMI4 TP5 SRC

Guide d'utilisation. OpenOffice Calc. AUTEUR INITIAL : VINCENT MEUNIER Publié sous licence Creative Commons

Introduction. PHP = Personal Home Pages ou PHP Hypertext Preprocessor. Langage de script interprété (non compilé)

UML. Diagrammes de classes (suite) Delphine Longuet.

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

Claude Delannoy. 3 e édition C++

I. Introduction aux fonctions : les fonctions standards

INF2015 Développement de logiciels dans un environnement Agile. Examen intra 20 février :30 à 20:30

Introduction à la programmation Travaux pratiques: séance d introduction INFO0201-1

Algorithme. Table des matières

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

V- Manipulations de nombres en binaire

TD/TP PAC - Programmation n 3

RESPONSIVE WEB DESIGN

Le langage C. Séance n 4

RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION)

RAPPORT AUDIT SEO. Élaboré à l'attention de : Monsieur Greber Élaboré par : Cédric Peinado

Programmation système I Les entrées/sorties

Utilisation d objets : String et ArrayList

Programmation Orientée Objet Java

Premiers Pas en Programmation Objet : les Classes et les Objets

Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr

L envoi d un formulaire par courriel. Configuration requise Mail Texte Mail HTML Check-list

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Expression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e

Classe ClInfoCGI. Fonctions membres principales. Gestion des erreurs

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

GOL502 Industries de services

Initiation à html et à la création d'un site web

Etude et développement d un moteur de recherche

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

-> Envoi automatique du nom du VIP vers la base de donnée -> Création automatique de la carte de vœux MINI SITE VŒUX

Optimiser les s marketing Les points essentiels

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, , ISBN :

Les sites Internet dynamiques. contact : Patrick VINCENT pvincent@erasme.org

Dans l'article précédent, vous avez appris

RÉALISATION D UN SITE DE RENCONTRE

TP1 : Initiation à Java et Eclipse

Comment bien référencer mes sites internet? Les 100 SECRETS EN VIDÉO

Module http MMS AllMySMS.com Manuel d intégration

Licence Sciences et Technologies Examen janvier 2010

Java Licence Professionnelle CISII, Cours 2 : Classes et Objets

Traduction des Langages : Le Compilateur Micro Java

JPEG, PNG, PDF, CMJN, HTML, Préparez-vous à communiquer!

Logiciel de gestion de caisse et d ardoises

Recherche dans un tableau

Plateforme PAYZEN. Définition de Web-services

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

Formation : WEbMaster

Le poids et la taille des fichiers

B = A = B = A = B = A = B = A = Recopier sur la copie chaque expression numérique et la réponse exacte. Réponse A Réponse B Réponse C Solution

Présentation du Framework BootstrapTwitter

UML et les Bases de Données

DOM - Document Object Model

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

Formation HTML / CSS. ar dionoea

Responsive Web Design. Responsive Design avec HTML 5.0 et CSS3

Programme Compte bancaire (code)

Compte Rendu d intégration d application

Transcription:

Unité d Enseignement en Informatique Année 2008-2009 Avril 2009 Page 1/6 2 ième année ESTIA CGP-MPA Examen de Système d Information (2h00, aucun document autorisé) PARTIE 1 Questions de cours Exercice 1 : (7 pts) Répondre directement sur la feuille au QCM proposé : mettre une croix pour la bonne réponse. Exercice 2 : (2 pts) Citez au moins 3 exemples d informations qu un SI peut gérer au sein de l entreprise. Exercice 3 : (2 pts) Qu y a-t-il à prendre en compte dans le coût d un SI? PARTIE 2 : Implémentation Un imprimeur propose à ses clients des réalisations d impressions dans différents formats (de A6 à A0) avec différentes résolutions possibles (75, 100, 300, 600 ou 1200 ppi) en couleur ou en niveau de gris. Afin de garantir la cohérence des prix pratiqués par cet imprimeur, entre l accueil, le standard téléphonique et le service facturation, mais aussi afin de faciliter le calcul des prix, l imprimeur souhaite mettre en place un outil de calcul informatisé commun à toutes ces personnes. De plus, disposant d un site web, les clients pourront aussi bénéficier de cet outil pour réaliser des devis en ligne. Voici comment fonctionne l outil : recherche.html devis.php

Page 2/6 Le calcul du prix HT facturé au client pour une prestation est calculé comme suit : 60000 mm² de papier coûte 0.01 10000000 px coûte 0.01 d encre 0 < quantité 10 coûte 2 de main d œuvre 10 < quantité 1000 coûte 1 de main d œuvre quantité > 1000 main d œuvre offerte Voici le code du fichier devis.php : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 <html> <head> <title>réponses</title> </head> <body> <h1>devis</h1> <?php?> include ("devis_utils.inc.php") ; Calcul des dimensions $format = $_POST['format'] ; $tab = trouver_format ($FORMATS, $format) ; $largeur_mm = $tab[1] ; $hauteur_mm = $tab[2] ; $resolution = $_POST['resolution'] ; $largeur_px = mm_to_px ($largeur_mm, $resolution) ; $hauteur_px = mm_to_px ($hauteur_mm, $resolution) ; $taille_mm = $largeur_mm $hauteur_mm ; $taille_px = $largeur_px $hauteur_px ; $en_couleur = ($_POST['couleur'] == 'oui') ; Calcul du prix if (($quantite = $_POST['quantite']) == '') $quantite = 1 ; $prix_ht = cout_total ($taille_mm, $taille_px, $en_couleur, $quantite) ; Affichage dans un tableau generer_tableau ($largeur_mm, $hauteur_mm, $format, $resolution, $largeur_px, $hauteur_px, $en_couleur, $quantite, $prix_ht) ; echo '<p><a href="recherche.html">nouveau devis</a></p>' ; </body> </html>

Voici le début du fichier devis_utils.inc.php : Page 3/6 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 <?php // Format de papier (nom, L, H) avec L et H en mm $FORMATS = array ( array ('A6', 105, 148), array ('A5', 148, 210), array ('A4', 210, 297), array ('A3', 297, 420), array ('A2', 420, 594), array ('A1', 594, 841), array ('A0', 841, 1189), ) ; Cette fonction retourne les dimensions d'un format papier. ENTREE/ $tab_formats (array[array[]]) : la liste des formats. ENTREE/ $format (string) : le format demandé. SORTIE/ (array[]) : les dimensions du format demandé dans un tableau construit ainsi : (nom, largeur, hauteur). function trouver_format ($tab_formats, $format) { for ($i=0 ; $i<count($tab_formats) ; $i++) { if ($tab_formats[$i][0] == $format) return $tab_formats[$i] ; function ceiling2 ($nombre) { return ceil($nombre 100) / 100 ; function cell ($contenu) { echo '<td>'.$contenu.'</td>'."\r\n" ; function bline () { echo '<tr>' ; function eline () { echo '</tr>' ;?> Pour que le script devis.php fonctionne, il manque le code des trois fonctions suivantes dans le fichier devis_utils.inc.php : mm_to_px() : lignes 23 et 24 cout_total() : lignes 35-36 generer_tableau() : lignes 40-44 Exercice 4 : (1 pt) La fonction trouver_format() est définie dans devis_utils.inc.php et est utilisée dans devis.php à la ligne 17. Si on écrit : $tab = trouver_format ($FORMATS, 'A1') ; Combien valent $tab[0], $tab[1] et $tab[2]? Aide : La fonction array() permet de créer un tableau. Par exemple : $FORMATS[0][1] vaut 105.

Exercice 5 : (1 pt) Page 4/6 La résolution d impression se calcule en ppi (pixel per inch). Ecrivez le code de la fonction mm_to_px() qui est utilisée aux lignes 23 et 24 de devis.php telle que : Aide : Cette fonction converti en pixels une dimension en mm selon la résolution indiquée. ENTREE/ $dim_mm (int) : la dimension en mm. ENTREE/ $res (int) : la résolution en ppi (pixel per inch). SORTIE/ (int) : retourne la dimension en pixels. function mm_to_px ($dim_mm, $res) 1 inch = 25,4 mm. La fonction floor() arrondi un réel à l entier inférieur. Par exemple, floor(3.14159) vaut 3 Exercice 6 : (3 pt) Ecrivez le code de la fonction cout_total() qui calcule le prix HT avec une précision de 2 décimales. Calcule le cout total d'une impression : cout main d'oeuvre, cout du papier et cout de l'encre. ENTREE/ $surface_mm (integer) : surface à imprimer en mm2. ENTREE/ $surface_px (integer) : nombre de pixels à imprimer. ENTREE/ $en_couleur (boolean) : vrai si impression couleur, faux sinon. ENTREE/ $quantite (integer) : nombre de copies. SORTIE/ (float) : le cout total HT en euros avec 2 décimales. function cout_total ($surface_mm, $surface_px, $en_couleur, $quantite) Aide : La fonction ceiling2() définie dans devis_utils.inc.php arrondi un réel à 2 décimales supérieures près. Par exemple, ceiling2(3.14159) vaut 3.15 Pour simplifier l écriture, vous pouvez décomposer le travail en trois fonctions : Calcule le cout de la main d'oeuvre tel que : - Moins de 10 copies : 2 euros - Moins de 1000 copies : 1 euro - Plus de 1000 copies : 0 euro ENTREE/ $quantite (integer) : nombre de copies. SORTIE/ (float) : le cout de la main d'oeuvre en euros. function cout_main_oeuvre ($quantite) Calcule le cout du papier tel que 60000 mm2 = 0.01 centimes. ENTREE/ $surface_mm (integer) : surface a imprimer en mm2. SORTIE/ (float) : le cout du papier en euros. function cout_papier ($surface_mm) Calcule le cout de l'encre tel que : - Couleur : 10000000 px = 0.03 centimes d'euro - Niveau de gris : 10000000 px = 0.01 centimes d'euro ENTREE/ $nb_pixels (int) : le nombre de pixels à imprimer. ENTREE/ $couleur (boolean) : vrai si impression couleur, faux sinon. SORTIE/ (float) : le cout de l'encre en euros. function cout_encre ($nb_pixels, $couleur)

Exercice 7 : (2 pt) Ecrivez le code de la fonction generer_tableau() telle que : Page 5/6 Cette fonction produit un tableau XHTML qui affiche les informations concernant le devis d'impression. ENTREE/$largeur_mm (int) : la largeur du papier en mm. ENTREE/$hauteur_mm (int) : la hauteur du papier en mm. ENTREE/$format (string) : le format du papier. ENTREE/$resolution (int) : la résolution d'impression. ENTREE/$largeur_px (int) : la largeur du fichier en px. ENTREE/$hauteur_px (int) : la hauteur du fichier en px. ENTREE/$en_couleur (boolean) : vrai si impression couleur, faux sinon. ENTREE/$quantite (int) : le nombre d'exemplaires à imprimer. ENTREE/$prix_ht (float) : le prix HT de l'impression. function generer_tableau ($largeur_mm, $hauteur_mm, $format, $resolution, $largeur_px, $hauteur_px, $en_couleur, $quantite, $prix_ht) Aide : Lour alléger l écriture du code, vous pouvez utiliser les trois fonctions bline(), cell() et eline() définies dans devis_utils.inc.php pour générer un tableau XHTML. Le code du caractère en XHTML s écrit Exercice 8 : (2 pt) Ecrivez le code de la page recherche.html. Aide : La balise <select> permet de créer une liste déroulante d'éléments (précisés par des balises <option>). Grâce à l'attribut name, elle peut être utilisée de même que la balise <input> dans un formulaire. Par exemple : <select name="liste_a_choix"> <option>choix 1</option> <option>choix 2</option> <option>choix 3</option> <option>choix 4</option> </select>

Page 6/6 QCM NOM Prénom : : Règles pour la notation : On part de 0 point. une réponse juste : +1 point une réponse fausse : -1 point pas de réponse : 0 point Les scores négatifs seront ramenés à 0. 1) Une entreprise qui ne possède pas d ordinateur ne peut pas posséder de SI : a. vrai b. faux 2) Qu est-ce qu un ERP? a. Un Environnement Robuste de Programmation b. Un progiciel de gestion intégré (Entreprise Ressource Planning) c. Un Réacteur Pressurisé Européen 3) Pour organiser l information au sein d un SI, la mise en place d une base de données est : a. nécessaire b. inutile c. préférable 4) Pour concevoir un SI, je : a. fais des lignes de code b. fais des diagrammes UML c. fais des diagrammes pieuvres 5) Avec lequel de ces langages développe-t-on des clients lourds? a. XHTML b. PHP c. JAVA 6) PHP est un langage : a. compilé b. interprété c. compilé puis interprété d. interprété puis compilé 7) PHP s exécute : a. côté bar b. côté client c. côté serveur