• Aucun résultat trouvé

Université de Xidian – Polytech’Sophia 2017–2018

N/A
N/A
Protected

Academic year: 2022

Partager "Université de Xidian – Polytech’Sophia 2017–2018"

Copied!
5
0
0

Texte intégral

(1)

Université de Xidian – Polytech’Sophia 2017–2018

Langage C

(V. Granet)

Durée : 2h00 Aucun document autorisé - Téléphones interdits

Nom chinois : Nom Pinyin :

Numéro étudiant : Classe :

I 1. On dispose de la fonctionlong factorielle(int n)qui renvoie n!. Sachant que l’entier le plus grand sur le typelongest donné par la constanteLONG_MAX, écrivez un programme qui détermine le plus grand entierndont on peut calculern!sur le type long.

1

(2)

I 2. Le code de César est une des méthodes de cryptographie les plus anciennes. Il consiste en une substitution mono-alphabétique, où la substitution est définie par un décalage circulaire de lettres.

Par exemple avec un décalage circulaire de 3 lettres, on remplace A par D, on remplace B par E, C par F, D par G, ... X par A, Y par B, Z par C.

Écrivez un programme C qui lit sur l’entrée standard un décalage (un entier, compris entre 1 et 25 - à vérifier) et une lettre (un caractère), et qui écrit la lettre chiffrée selon la méthode de César sur la sortie standard.Vous appliquerez cette transformation uniquement sur les lettres minuscules et majuscules, tout autre caractère restera inchangé.

2

(3)

Soit d’une fonctionf continue sur un intervalle réel [a, b], on veut trouver lesx, appelés zéros, tels que f(x) = 0. Pour cela, nous utiliserons la méthode dichotomique suivante qui part du principe que sif(a)f(b)<0alors il existe au moins un zéro :

1. choisir[a, b]qui contient a priori un zéro ; 2. choisir le milieum de l’intervalle[a, b]; 3. sif(m) = 0alors on a trouvé un zéro

4. sif(a)f(m)<0alors définir le nouvel intervalle [a, m]; 5. sif(b)f(m)<0 alors définir le nouvel intervalle[m, b]; 6. recommencer à partir de 2.

I 3. Écrivez la fonctionzeroqui renvoie un zéro d’une fonctionf selon l’algorithme itératif précédent.

Un zéro sera trouvé à un epsilon près, à passer en paramètre. Enfin, pour garantir l’achèvement de l’énoncé itératif, le nombre maximal d’itérations sera également passé en paramètre.

3

(4)

On représente un entier non signé (unsigned int) sous forme binaire à l’aide un tableau d’en- tiers courts (short) contenant des 0 et des1. Le bit de poids faible, 20, est à l’indice0, et le bit de poids fort,2NB_BITS−1, est à l’indice NB_BITS-1. Les questions qui suivent sont liées.

I 4. À l’aide d’un define, définissez la constante NB_BITS égale au nombre d’éléments du tableau nécessaires à la représentation d’un entier non signé.

I 5. Écrivez la fonctionvaleurDecimale qui renvoie la valeur décimale d’un entier non signé donné à partir de sa représentation binaire contenue dans un tableau. Vous ne ferez aucune évaluation à la puissance. L’en-tête de cette fonction est le suivant :

u n s i g n e d i n t v a l e u r D e c i m a l e (c o n s t s h o r t b i t s [])

4

(5)

I 6. Écrivez la méthode decalageDroit qui produit un décalage de n éléments vers la droite dans le tableau qui représente un entier non signé. Le décalage est ouvert, c’est-à-dire que des0 sont réinjectés en début de tableau – i.e. à partir de l’indice0. L’en-tête de cette fonction est le suivant :

v o i d d e c a l a g e D r o i t (s h o r t b i t s [] , c o n s t i n t n )

5

Références

Documents relatifs

[r]

Le caractère illimité de la suite des nombres premiers est une

L’ensemble des nombres premiers qui ne divise pas N est donc non vide et admet un plus petit élément : soit P le plus petit nombre premier qui ne divise pas N.. Du coup, on en

Par contre la calculatrice, dénuée de toute sensibilité, donne illico tous les nombres (pairs donc), dont les entiers qui leurs sont inférieurs et premiers avec eux,

==&gt; Ceci permet de dire que pour tout N &gt; N0=30 , la décomposition en 4 premiers distincts est possible ; N0 est le plus grand qui ne peut se décomposer en 4

Quel est le plus grand entier naturel qui ne peut pas s’exprimer comme la somme de quatre nombres premiers distincts.. Justifiez

Le troisième côté est compris entre 16 et 36, différence et somme des deux autres ; ainsi le côté 10 est le plus petit et est opposé au plus petit angle ; celui-ci est l’angle

La réponse à cette question est presque immédiate dès lors que l’on remarque que tout tirage de 3 boules dans l’urne est du type de la question précédente !... PanaMaths [2 - 3]