Exam de stat explo

Disponible uniquement sur Etudier
  • Pages : 8 (1899 mots )
  • Téléchargement(s) : 0
  • Publié le : 2 mai 2011
Lire le document complet
Aperçu du document
|
Commencé : 16 octobre 2009 12:10 |
Questions : 40 |
  | |
Instructions
Vous devez enregistrer vos réponses A CHAQUE QUESTION.
Les questions à choix multiple comportant une plage d'entrée du code informatique se verront attribuer une note positive uniquement en présence de codes R valides.
Chaque question est indépendante des autres questions. L'ordre des questions et des réponsesest aléatoire.
Les documents disponibles sur votre compte informatique sont autorisés, ainsi que les documents papier du cours et l'aide en ligne de R. L'utilisation de tout service de messagerie ou de mail est interdite et, en cas d'utilisation avérée, se verra sanctionnée par une note nulle pour les deux parties. La copie papier de l'examen doit être rendue à la sortie de la salle informatique.1. Question bleue : question 1.1) (Points : 1)   |
  | ********************************************************Question BleueLe code suivant vise a résoudre une grille de Sudoku simple :
On rappelle qu'un Sudoku est une grille 9x9 partiellement remplie par des chiffres pour laquelle il existe une seule solution telle qu'un chiffre entre 1 et 9 n'apparaisse qu'une seule fois dans une ligne,dans une colonne ou dans un bloc 3x3. Pour donner la grille de Sudoku, on définit :s=matrix(0,ncol=9,nrow=9)
s[1,c(1,2,4,9)]=c(1,0,2,6)
s[2,c(1,2,5,9)]=c(8,3,1,9)
s[3,c(2,6,7)]=c(2,9,3)
s[4,c(3:5,7)=c(3,4,7,6)
s[5,c(4:6,8,9)]=c(5,6,8,3,1)
s[6,c(1,3,6,9)]=c(6,1,2,4)
s[7,c(1,8,9)]=c(7,8,3)
s[8,c(1,2,4,6,7)]=c(5,4,1,7,9)
s[9,c(2:7,9)]=c(1,9,8,2,6,7,5)où les cases vides sont indiquées par deszéros.Question 1.1) : Corriger la faute de frappe présente dans cette définition de la grille, fournir la ligne de code corrigée et imprimer la grille dans la case ci-dessous. ParagrapheNouveau Insert equation |
  | Enregistrer la réponse |
  |
2. Question 1.2) (Points : 0,5)   |
  | On définit une table des valeurs possibles de chaque case par pool=array(TRUE,dim=c(9,9,9)), pool[i,j,]représentant les valeurs possibles de s[i,j] entre 1 et 9 par des TRUE et les impossibles par des FALSE.Déterminer si l'élimination des cases s[i,j] déjà remplies se fait par la boucle commençant par for (i in 1:9) for (j in 1:9){ 
et continuant par1. pool[(s[i,j]>0),-s[i,j]]=FALSE}2. if (s[i,j]>0) pool[i,j,s[i,j]]=FALSE}3. if (s[i,j]>0) pool[i,j,-s[i,j]]=FALSE}4. if (s[i,j]>0)pool[i,j,1:9-s[i,j]]=FALSE} |
  | Enregistrer la réponse |
  |
3. Question 1.3) (Points : 0,5)   |
  | Ayant ainsi éliminé les cases remplies de s, on parcourt les cases non remplies de s parfor (t in 1:100){for (i in sample(1:81)){if (s[i]==0){a=((i-1)%%9)+1b=trunc((i-1)/9)+1boxa=3*trunc((a-1)/3)+1boxa=boxa:(boxa+2)boxb=3*trunc((b-1)/3)+1boxb=boxb:(boxb+2)for (u in(1:9)[pool[a,b,]]){pool[a,b,u]=(sum(u==s[a,])+sum(u==s[,b])+sum(u==s[boxa,boxb]))==0}if (sum(pool[a,b,])==1){s[i]=(1:9)[pool[a,b,]]}}}}Question 1.3) A quoi est égal s[i] dans le code ci-dessus ?
1. s[a,b]2. s[i,i]3. s[i,]4. s[,i]5. s[b,a] |
  | Enregistrer la réponse |
  |
4. Question 1.4) (Points : 1)   |
  | La boucle extérieure for (t in 1:100) est employée ci-dessus par défaut pour garantir la complétion de toutes lesentrées de la grille de Sudoku. Remplacer cette boucle par une contrainte plus efficace utilisant while et portant sur la présence ou non de cases de s égales à zéro. ParagrapheTapez ici votre réponse NewInsert equation |
  | Enregistrer la réponse |
  |
5. Question 1.5) (Points : 1)   |
  | Produire la solution de cette grille de Sudoku dans la case ci-dessous.ParagrapheCopier-collervotre réponse ici NewInsert equation |
  | Enregistrer la réponse |
  |
6. Question turquoise : question 2.1) (Points : 2)   |
  | ********************************************************Question TurquoiseQuestion 2.1) Parmi les propositions suivantes, quels couples (g,M) sont valides ? (On pourra utiliser la fonction optimise.)Cochez la bonne proposition ci-dessous :1. proposition 12....
tracking img