Vous êtes sur la page 1sur 2

Université Hassan 2

Faculté des Sciences Aïn Chock de Casablanca


Département Mathématiques et Informatique

Série de TD N°2 Informatique


Opérateurs, Conditions & Boucles SMP – S4

Exercice 1
Donnez la valeur de chacune des variables dans les opérations suivantes :
int A = 1 + 2 * 3 – 4 ;
int B = (1 + 2) * (3 – 4);
int C = 5 * A++ ;
float D = ++B + 10 ;
float E = D-- / 10 ;
int F = A / B / C / D / E;

Exercice 2
Donner le résultat d’exécution du programme suivant :
#include <stdio.h>
main()
{
unsigned int a = 60; /* 60 = 0011 1100 */
unsigned int b = 13; /* 13 = 0000 1101 */
int c = 0;

c = a & b;
printf("Ligne 1 - Valeur de c est %d\n", c );
c = a | b;
printf("Ligne 2 - Valeur de c est %d\n", c );
c = a ^ b;
printf("Ligne 3 - Valeur de c est %d\n", c );
c = ~a;
printf("Ligne 4 - Valeur de c est %d\n", c );
c = a << 2;
printf("Ligne 5 - Valeur de c est %d\n", c );
c = a >> 2;
printf("Ligne 6 - Valeur de c est %d\n", c );
c = a && b;
printf("Ligne 7 - Valeur de c est %d\n", c );
c = a || b;
printf("Ligne 8 - Valeur de c est %d\n", c );

Exercice 3
Écrire un programme qui résout l’équation AX2+BX+C=0 en envisageant tous les cas
particuliers.

Exercice 4
Ecrire un programme qui permet de lire un entier entre 1 et 7 et d’afficher le jour de la
semaine correspondant (1 pour Lundi et 7 pour dimanche), et dans le cas où la valeur entrée
ne se trouve pas dans l’intervalle [1 ; 7], le message « Erreur numéro » sera affiché.
1/2
Exercice 5
Un magasin de reprographie facture 0,60 DH les dix premières photocopies, 0,50 DH les
vingt suivantes et 0,40 DH au-delà. Ecrivez un programme qui demande à l’utilisateur le
nombre de photocopies effectuées et qui affiche la facture correspondante.

Exercice 6
Soit le petit programme suivant :
#include<stdio.h>
main(){
int i, n, som ;
som = 0 ;
for (i = 0 ; i < 4 ; i++){
printf ("Donnez un Entier ");
scanf ("%d",&n) ;
som += n ;
}
printf ("Somme : %d\n", som);
}

a) Que fait le programme ?


b) Écrire un programme réalisant exactement la même chose, en employant, à la place
de l’instruction for :
− Une instruction while,
− Une instruction do... while.

Exercice 7
Un nombre premier n’est divisible que par 1 ou par lui-même.
Ecrire un algorithme qui lit un entier positif et vérifie si ce nombre est premier ou non.

Exercice 8
a. Écrire un programme qui calcul le factoriel d’un entier positif saisi au clavier.
b. Calculez le N-ième terme UN de la suite de FIBONACCI qui est donnée par la relation
de récurrence : U1=1 U2=1 UN=UN-1+UN-2 (pour N>2)
c. Écrire un programme qui affiche la moyenne d'une suite d'entiers positifs entrés
au clavier. On arrêtera la saisie quand le nombre négatif est entré, comme
dans l'exemple ci-dessous :

Entrez un entier positif : 5


Entrez un entier positif : 2
Entrez un entier positif : 3
Entrez un entier positif : ‐1
La moyenne de ces 3 entiers vaut 3.333333

2/2