• Aucun résultat trouvé

Université de Xidian – Polytech’Sophia 2020–2021

N/A
N/A
Protected

Academic year: 2022

Partager "Université de Xidian – Polytech’Sophia 2020–2021"

Copied!
4
0
0

Texte intégral

(1)

Université de Xidian – Polytech’Sophia 2020–2021

Langage C

(V. Granet)

Durée : 1h30 Aucun document autorisé - Téléphones interdits

Nom chinois : Nom Pinyin :

Numéro étudiant : Classe :

On lit sur l’entrée standard une suite d’entiers quelconques pris sur le type (int). Parmi les entiers lus, on veut mémoriser dans un tableau uniquement ceux qui sont positifs et pairs. Le tableau a une taille maximale donnée par la constanteNB_MAX_VALEURS.

I 1. Écrivez la procédure lireValeursqui fait le traitement précédent. Le nombre d’entiers effec- tivement mémorisés sera conservé dans le premier élément du tableau. Note : la fonction scanf renvoieEOFquand la fin de fichier est atteinte.

Cette procédure possède l’en-tête (que vous devez respecter) suivant :

// conséquent : ...

v o i d l i r e V a l e u r s (i n t t V a l [])

1

(2)

I 2. Déclarez le type énuméréLesStats qui contient les valeurs, dans cet ordre, EFFECTIF, MIN,MAX, MOYENNE, ECART_TYPE.

Maintenant, on souhaite faire quelques calculs statistiques : conserver l’effectif, et calculer le minimum, le maximum, la moyenne, ainsi que l’écart-type (σ=q

1 n

Pn

i=1(xi−¯x)2) des entiers mémorisés dans le tableau.

I 3. Écrivez la procédure statsqui, à partir d’un tableau (initialisé avec la procédure lireValeurs précédente), remplit un second tableau avec les statistiques précédentes aux indices donnés par le type énuméréLesStats. Cette procédure possède l’en-tête (que vous devez respecter) suivant :

// Antécédent : ...

// Conséquent : ...

v o i d s t a t s (c o n s t i n t t V a l [] , d o u b l e t S t a t [])

2

(3)

I 4. Écrivez la procédureecrireStatsqui écrit sur la sortie standard les statistiques calculées.

I 5. Écrivez la fonctionmainqui teste les procédures précédentes. Vous prendrez soin de bien déclarer les tableaux. Par exemple, si l’entrée standard contient les valeurs suivantes :

12 34 -39 100 399 432 -8 19 34 56

l’exécution du programme fournira le résultat suivant :

statistiques sur 6 valeurs : min = 12, max = 432,

moyenne = 111.33, écart-type = 145.97

3

(4)

Une matrice de m lignes et n colonnes contient des caractères (type char). On veut écrire fonctionlgMaxSuitequi renvoie la taille de la plus longue suite formée de caractèrescconsécutifs sur toutes les lignes de la matrice. Par exemple, la plus longue suite de caractères’*’se trouve à la 5eligne (en rouge) dans la matrice 7×15 ci-dessous et est égale à 9 :

o *

*** o o *****

*******

********* o

***

*-- *** --*

I 6. Écrivez la fonctionlgMaxSuitecomme indiqué précédemment :

// Antécédent : m>0 et n>0, c caractère de la plus longue suite dans mat // Rôle : renvoie la longueur de la plus longue suite de c

i n t l g M a x S u i t e (i n t m , i n t n , c h a r mat [][ n ] , c h a r c ) {

4

Références

Documents relatifs

On souhaite écrire une petite application graphique qui permet à l’utilisateur de dessiner deux points dans un carré, de les relier par une droite et d’afficher la distance entre

Écrivez la procédure stats qui, à partir d’un tableau (initialisé avec la pro- cédure lireValeurs précédente), remplit un second tableau avec les statistiques précédentes

Écrivez la fonction lireReel qui lit sur l’entrée standard caractère à caractère (à l’aide de la fonction getchar() , à l’exclusion de toute autre fonction), un réel (positif

Écrivez de façon itérative la fonction itos qui renvoie la conversion d’un entier positif ou nul passé en paramètre, en sa représentation sous forme d’une chaîne de

Au lieu de retirer, à chaque itération, 1 diviseur au dividende et d’incrémenter de 1 le quotient, le diviseur est multiplié successivement par 2 pour trouver son plus grand

qui prend en paramètre une chaîne de caractères, et qui remplace chaque chiffre par le caractère ’_’ dans celle-ci.. La fonction renvoie un pointeur sur le 1er caractère de

Il est nécessaire d’écrire un destructeur pour libérer explicitement la mémoire occupée par le tableau et les 3 points du triangle

En utilisant, la classe std::ifstream et ses méthodes is_open , get , eof et close , écrivez la classe FileInputStream qui permet de lire un fichier d’octets (et uniquement