Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Karami C1

Télécharger au format doc, pdf ou txt
Télécharger au format doc, pdf ou txt
Vous êtes sur la page 1sur 3

Ecole Supérieure de Technologie d'Essaouira D.U.

T Informatique
Année 2012-2013
Matière : Algorithmique & Programmation (Langage C)

Enseignant : F. Karami

Feuille TP N° : 2

1 Exercice 1 : Ecrire un programme qui résout les équations du second degré
(ax2 + bx + c = 0). Le programme demande a, b et c à l’utilisateur puis indique le nombre
de solutions ainsi que leurs valeurs.

1Exercice 2 : Ecrire un programme retournant le PGCD ainsi que le PPCM de 2 entiers


entrés par l’utilisateur.

1 Exercice 3 : Ecrire un programme qui, à partir de la saisie d’une date de naissance,


affiche le signe du zodiaque correspondant.

Capricorne :       22/12 au 20/1     Verseau :          21/1  au 19/2    Poissons :         20/2  au 20/3    


Bélier :           21/3  au 20/4    Taureau :          21/4  au 20/5     Gémeaux :          21/5  au 21/6
Cancer :           22/6  au 22/7     Lion :             23/7  au 23/8    Vierge :           24/8  au 23/9    
Balance :          24/9  au 23/10    Scorpion :         24/10 au 22/11    Sagittaire :       23/11 au 21/12
Utiliser la construction if ... else puis switch ... case.

1 Exercice 4  : En utilisant l’opérateur conditionnel (? :), calculer et afficher le max et


le min de deux nombres lus au clavier ?
Même question pour trois nombres lus au clavier ?

1 Exercice  5: Quel type d’erreur contient ce code ? Corrigez le ?


main(){
int n ;
do{
printf ("donnez un nombre : ") ;
scanf ("%d", &n) ;
printf ("voici son carré : %d\n", n*n) ;
}while (n) ;
}
0 Exercice 6: Quels seront les résultats fournis par ce programme ?
#include <stdio.h>
main (){
int n = 543 ;
int p = 5 ;
float x = 34.5678;
printf ("A : %d %f\n", n, x) ;
printf ("B : %4d %10f\n", n, x) ;
printf ("C : %2d %3f\n", n, x) ;
printf ("D : %10.3f %10.3e\n", x, x) ;
printf ("E : %*d\n", p, n) ;
printf ("F : %*.*f\n", 12, 5, x) ;
}
0Exercice 7: Que fait ce programme ? quel est le rô le de l’instruction break ?
main(){
int n ;
printf ("donnez un entier : ") ;
scanf ("%d", &n) ;
switch (n){
case 0 : printf ("nul\n") ;
break ;
case 1 : printf ("un\n") ;
break ;
case 2 : printf ("deux\n") ;
break ;
}
printf ("au revoir\n") ;
}
1Exercice 8: 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) ;
}
É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.

1Exercice 9: Calculer la moyenne de notes fournies au clavier avec un dialogue de ce type :


note 1 : 12
note 2 : 15.25
note 3 : 13.5
note 4 : 8.75
note 5 : -1
moyenne de ces 4 notes : 12.37
Le nombre de notes n’est pas connu a priori et l’utilisateur peut en fournir autant qu’il le
désire. Pour signaler qu’il a terminé, on convient qu’il fournira une note fictive négative.
Celle-ci ne devra naturellement pas être prise en compte dans le calcul de la moyenne.

Exercice 10: Ecrire un programme permettant de réaliser les opérations d’une


calculatrice.
1Exercice 11 : Calculez la factorielle N! = 1*2*3*...*(N-1)*N d'un entier naturel N en
respectant que 0!=1.
a) Utilisez while,
b) Utilisez for.

Vous aimerez peut-être aussi