SERVICES INFORMATIQUES AUX ORGANISATIONS SESSION Sous-épreuve E 22 Algorithmique appliquée

Documents pareils
STAGE IREM 0- Premiers pas en Python

IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB

Représentation d un entier en base b

Comment créer un nouveau compte? 1/2- Pour le consommateur

Présentation du langage et premières fonctions

TP : Gestion d une image au format PGM

Pop-Art façon Roy Liechtenstein

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Licence Sciences et Technologies Examen janvier 2010

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

Utiliser ma messagerie GMAIL

Utiliser le logiciel Photofiltre Sommaire

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

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)

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

Introduction à MATLAB R

Chaque ordinateur est constitué de différentes unités de stockage de données (Disque dur, Graveur ) que l on peut imaginer comme de grandes armoires.

Cours Informatique Master STEP

Formats d images. 1 Introduction

Initiation à la programmation en Python

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS =

Probabilités. Rappel : trois exemples. Exemple 2 : On dispose d un dé truqué. On sait que : p(1) = p(2) =1/6 ; p(3) = 1/3 p(4) = p(5) =1/12

Démonstration d utilisation De NesmaCom

1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions

1 Recherche en table par balayage

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

Securexam pour le programme CPA,CGA

L informatique en BCPST

Durée de L épreuve : 2 heures. Barème : Exercice n 4 : 1 ) 1 point 2 ) 2 points 3 ) 1 point

Chap17 - CORRECTİON DES EXERCİCES

Algorithmique et programmation : les bases (VBA) Corrigé

Guide pour les chercheurs. Version 1.0

Guide du Pilote d Imprimante Universel

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

I. Introduction aux fonctions : les fonctions standards

Introduction à l informatique en BCPST

COMMENT CREER VOS BANDES GRAND FORMAT?

F7n COUP DE BOURSE, NOMBRE DÉRIVÉ

Les bases de l étalonnage avec Adobe Premiere Pro Formation de Duduf

Les suites numériques

I00 Éléments d architecture

UTILISATION D'UN RADIOCHRONOMETRE POUR DATER DES GRANITES

Rappels sur les suites - Algorithme

Opérations de base sur ImageJ

Guide d utilisation Salles avec un tableau blanc interactif

Chap III : Les tableaux

Entreprises Suisse. Rentrées de paiements CREDIT SUISSE BVRB Expert Documentation technique

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

TP 1. Prise en main du langage Python

Programmation avec Xcas ou Python

DM 1 : Montre Autoquartz ETA

NOM : Prénom : Date de naissance : Ecole : CM2 Palier 2

THEME : CLES DE CONTROLE. Division euclidienne

TD3 - Facturation avec archivage automatisé

Introduction à l algorithmique et à la programmation (Info 2)

PRONOTE2008. Guide de l Enseignant. Saisie avec ProfNOTE, PRONOTE Client et via l Espace Professeurs sur internet

CREATION D UNE EVALUATION AVEC JADE par Patrick RUER (

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

Chapitre 13 Numérisation de l information

Projet Matlab : un logiciel de cryptage

Guide de démarrage rapide. (pour la version 5.0.)

PROJET 1 : BASE DE DONNÉES REPARTIES

UE Programmation Impérative Licence 2ème Année

Optimisation, traitement d image et éclipse de Soleil

1. Structure d'un programme FORTRAN 95

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

Codage d information. Codage d information : -Définition-

1 TD 2 : Construction d'une chier Acrobat et envoi par

Indications pour une progression au CM1 et au CM2

Sub CalculAnnuite() Const TITRE As String = "Calcul d'annuité de remboursement d'un emprunt"

Chapitre 1 I:\ Soyez courageux!

Manuel d'utilisation du site Deptinfo (Mise en route)

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

Cours 1 : Qu est-ce que la programmation?

Cours Base de données relationnelles. M. Boughanem, IUP STRI

2 S I M 1 P H O N E G U I D E U T I L I S A T E U R. Guide d utilisation E-commerce / Prestashop

SVP ISO - Sécurité & Protection

S.P.S.N. Lac du Der 2008

Jean Dubuffet AUTOPORTRAIT II

HTML. Notions générales

MANUEL D UTILISATION DE LA SALLE DES MARCHES APPEL D OFFRES OUVERT ACCES ENTREPRISES. Version 8.2

Probabilités Loi binomiale Exercices corrigés

ENDNOTE X2 SOMMAIRE. 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque

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

GUIDE UTILISATEUR WEBCONFERENCE. Utilisation depuis un PC Windows

M06/5/COMSC/SP1/FRE/TZ0/XX INFORMATIQUE NIVEAU MOYEN ÉPREUVE 1. Mardi 2 mai 2006 (après-midi) 1 heure 30 minutes INSTRUCTIONS DESTINÉES AUX CANDIDATS

Win UR Archive. Manuel de l utilisateur. Version 3.0, mars 2009

LES TYPES DE DONNÉES DU LANGAGE PASCAL

GEST_INSTANCES APPLICATION DE GESTION DES INSTANCES ET REUNIONS EN EPLE ETABLISSEMENT PUBLIC LOCAL D ENSEIGNEMENT

Factorisation Factoriser en utilisant un facteur commun Fiche méthode

Découverte de Python

Merci de suivre les indications suivantes afin de créer votre compte membre :

Comment bien démarrer avec. NetAirClub GUIDE ADMINISTRATEUR V1.5. Table des matières

Bernard HAMM, Évelyne LAVOISIER

Chapitre 2. Eléments pour comprendre un énoncé

Cours d initiation à la programmation en C++ Johann Cuenin

FORMATION MULTIMÉDIA LVE

Transcription:

BREVET DE TECHNICIEN SUPÉRIEUR SERVICES INFORMATIQUES AUX ORGANISATIONS SESSION 2012 Sous-épreuve E 22 Algorithmique appliquée Il est formellement interdit d utiliser toute connexion à un réseau interne ou externe au centre d examen, quel qu en soit le procédé. L usage d une calculatrice est autorisée. Cette épreuve comporte 2 parties : une première partie qui dure 30 minutes à l issue de laquelle vous devez fournir une production écrite répondant au sujet. une deuxième partie qui dure également 30 minutes. Vous travaillerez sur un des ordinateurs d examen pour coder les algorithmes papiers sous Python. Vous enregistrerez votre travail sur une clé USB fournie par votre professeur. Vous imprimerez votre travail et le signerez. Vous n oublierez pas de rendre : Le sujet. L algorithme papier où figureront votre nom et prénom. L impression de votre programme signée Page 1

Nom : Prénom : Problème : Une image en noir et blanc, découpée en pixels, est considérée comme une matrice comportant des entiers de 0 à 100, appelés dans la suite saturation. 0 correspond à une case blanche, 100 à une case noire, un entier entre 0 et 100 à une case grise, d autant plus foncée que le nombre est proche de 100. Par exemple la matrice : 0 0 100 50 20 35 50 75 correspond à l image : L algorithme et la traduction Python du programme principal sont : Variables : M, Mcontraste, : liste de listes nombredelignes, nombredecolonnes, luminosité : entiers Début M [[0,0,0,100,75,50,0],[0,0,100,100,70,40,0], [0,100,100,100,65,35,0],[0,100,0,100,60,30,0], [0,0,0,100,55,25,0],[0,0,0,100,50,20,0]] # Écriture de la matrice Écrire La matrice à traiter est : ecrire matrice(m) # Calcul de la luminosité luminosite luminosite(m) Écrire La luminosité de la matrice est print(luminosite) # Calcul de la matrice contraste Mcontraste contraste(m,luminosite) # Fonctions #Programme principal M=[[0,0,0,100,75,50,0],[0,0,100,100,70,40,0], [0,100,100,100,65,35,0],[0,100,0,100,60,30,0], [0,0,0,100,55,25,0],[0,0,0,100,50,20,0]] print( La matrice à traiter M est : ) ecrire matrice(m) luminosite=luminosite(m) print( La luminosité de la matrice est ) print(luminosite) Mcontraste=contraste(M,luminosite) print( La matrice contraste est : ) ecrire matrice(mcontraste) Écrire La matrice contraste est : ecrire matrice(mcontraste) Fin Page 2

Partie A : A traiter sur feuille et à rendre avant d accéder aux machines. Durée maximum : 30 minutes 8 points Exercice 1 Écrire une fonction ecrire matrice(mat) dont le paramètre est la matrice MAT. Cette fonction affichera la matrice MAT ligne par ligne. >>> MAT=[[1,2,3],[4,5,6],[7,8,9]] >>> ecrire matrice(mat) [[1,2,3] [4,5,6]] [7,8,9]] Exercice 2 La luminosité d une image est la moyenne m de ses saturations. Pour l image ci-dessus m = 100+50+100+100+20+35+50+75 = 44 4 3 Écrire une fonction luminosite(mat),dont le paramètre est la matrice MAT. Cette fonction renvoie la luminosité de l image correspondant à la matrice MAT. Exercice 3 On cherche ici à accentuer les contrastes : une couleur foncée sera encore plus foncée, une couleur claire sera encore plus claire. Pour cela on utilise la luminosité m calculée précédemment et pour chaque saturation de la matrice MAT on la divise par 2 si cette saturation est inférieure à m on la multiplie par 2 sinon sans dépasser 100. Si la nouvelle saturation dépasse 100 elle prendra la valeur 100. Avec m = 44, on obtient : 0 0 100 50 20 35 50 75 la matrice de contraste = 10 17 100 100 Écrire une fonction contraste(mat,luminosite) dont les paramètres sont la matrice MAT et sa luminosité. Cette fonction renvoie la matrice contraste. Page 3

Partie B : A traiter sur un ordinateur en utilisant le langage Python. Vous enregistrerez votre travail sous votre nom. Durée maximum : 30 minutes 8 points Exercice 4 Coder sous Python la fonction ecrire matrice(mat) de l exercice 1 puis la tester. Exercice 5 Coder sous Python la fonction luminosite(mat) de l exercice 2 puis la tester. Exercice 6 Coder sous Python la fonction contraste(mat,luminosite) de l exercice 3 puis la tester. Exercice 7 Télécharger le programme principal. Faîtes un copier coller sur votre page contenant les fonctions puis le tester. Page 4

BREVET DE TECHNICIEN SUPÉRIEUR SERVICES INFORMATIQUES AUX ORGANISATIONS Aide mémoire a // b calcule le quotient entier de la division de a par b. 13 // 5 donne 2 a % b calcule le reste de la division de a par b. 13 % 5 donne 3 a / b calcule le quotient de a par b. 13 // 5 donne 2.6 a * b calcule le produit de a par b. 3 * 5 donne 15 a ** b calcule a à la puisance b. 2 ** 3 donne 8 Vrai et Faux sont les booléens True et False. liste[i] restitue l élément de la liste de rang i. Liste=[10,25,33,4,8] Liste[1] renvoie 25. Une matrice est une liste de listes. M=[[1,2,3,4,5],[6,7,8,9,10],[11,12,13,14,15]] = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 M[0] est la première ligne de la matrice : [1,2,3,4,5] M[1][2] est la valeur de la deuxième ligne, troisième colonne soit 8. len(liste) restitue la longueur de la liste. Liste=[10,25,33,4,8], Len(Liste) renvoie 5. Liste.append(a) ajoute l élément a à la liste Liste Liste=[10,25,33,4,8], Liste.append(100) renvoie [10,25,33,4,8,100] Liste.insert(i,a) ajoute l élément a au rang i de la liste Liste Exemple Liste=[10,25,33,4,8], Liste.insert(0,100) renvoie [100,10,25,33,4,8] range(a,b) est la liste des entiers compris entre a et b, b non compris. range(0,5) renvoie la liste [0,1,2,3,4] for i in range(0,5) :... correspond à : Pour i allant de 0 à 4 Chaîne de caractères. Comme pour les listes : len(ch) donne la longueur de la chaîne de caractères ch. ch[0] est le premier caractère de la chaîne ch ch= AMI, len(ch) renvoie 3. ch[0] renvoie A. ch + S renvoie AMIS Syntaxe pour l écriture d une fonction : >>> def somme produit(a,b): somme=a+b produit=a*b return somme,produit donne >>> somme produit(3,4) (7, 12) >>> a,b=somme produit(3,4) >>> a 7 >>> b 12 Page 5