INF-145 Programmation avancée et langage C Page 1
École de technologie supérieure
INF-145
LABORATOIRE NUMÉRO 1
Exercices
1. OBJECTIF
Ce laboratoire a pour but de vous :
- familiariser avec l’environnement Visual C++;
- rappeler la syntaxe du langage C.
2. FONCTIONNEMENT DU LABORATOIRE
Ce laboratoire se compose de 12 exercices. Ceux-ci doivent tous être complétés
d’ici la prochaine séance de laboratoire.
Chaque exercice est accompagné d’une solution. Il vous est conseillé de ne pas
consulter cette dernière avant d’avoir complété l’exercice.
INF-145 Programmation avancée et langage C Page 2
3. EXERCICES
1) Écrivez un programme qui affiche à l’écran la phrase latine « ab ovo usque ad
mala ».
Voir l'indice
Voir la solution
2) Le Watt est une unité de puissance qui correspond au transfert d’un joule
pendant une seconde dans un système énergétique. Sachant qu’un Watt
correspond à 0.2388459 calorie par seconde, écrivez un programme qui saisit
un nombre de Watt au clavier et affiche la puissance équivalente exprimée en
calorie par seconde.
Résultat attendu
Voir l'indice
3) Soit le schéma électrique ci-dessous qui se compose d’une alimentation
continue et d’une résistance.
La tension se note V (exprimée en Volt) et la résistance se note R (exprimée
en Ohm). Sachant que la loi d’Ohm affirme que l’intensité du courant I (en
Ampère) peut être calculée à l’aide de la formule I = V / R, écrivez un
programme qui saisit la tension et la résistance et qui affiche lintensité.
Résultat attendu
Voir l'indice
INF-145 Programmation avancée et langage C Page 3
4) Si on laisse tomber un objet sphérique dans l’atmosphère, celui-ci accélère
jusqu’à ce que son poids compense exactement la résistance de l’air. La
formule qui suit permet de calculer la vitesse limite V d’un tel objet.
: - m = la masse de la sphère (en kg);
- g = l’accélération de la pesanteur (en m/s2) que nous fixerons à 9.81;
- ρ = la masse volumique de l’air (en kg/m3) que nous fixerons à 1.2;
- r = le rayon de la sphère (en m).
Écrivez un programme qui saisit la masse ainsi que le rayon de la sphère et
qui affiche sa vitesse maximale en chute libre.
Résultat attendu
Voir l'indice
5) Écrivez un programme qui saisit deux nombres entiers au clavier et qui affiche
le plus petit de ces deux nombres.
Résultat attendu
Voir l'indice
6) Écrivez un programme qui saisit deux nombres entiers au clavier et qui affiche
le plus grand de ces deux nombres.
Résultat attendu
Voir l'indice
2
5.0 2r
mg
V

INF-145 Programmation avancée et langage C Page 4
7) Le nombre de Reynolds sert à caractériser un écoulement en mécanique
des fluides. Il se calcule de la façon suivante :
: - V = vitesse caractéristique du fluide (en m/s);
- L = la dimension caractéristique (en m);
- v = la viscosité cinématique du fluide (en m2/s).
Un écoulement est laminaire lorsque R est inférieur à 2000, turbulent lorsque
R est supérieur à 4000 et transitoire dans tous les autres cas.
Écrivez un programme qui saisit V, L ainsi que v et qui affiche si l’écoulement
est laminaire, turbulent ou transitoire.
Résultat attendu
Voir l'indice
8) On vous informe que sur un chantier on utilise la recette ci-dessous pour
fabriquer 1 m3 de béton.
Écrivez un programme qui saisit un nombre de kg de ciment, de sable et de
gravier et qui affiche le volume maximal de béton qui peut alors être produit.
Résultat attendu
Voir l'indice
v
VL
R
RECETTE POUR FABRIQUER 1m3 DE BÉTON
350 kg de ciment
680 kg de sable (granulométrie de 1 à 5 mm)
1175 kg de gravier (granulométrie de 6 à 15 mm)
INF-145 Programmation avancée et langage C Page 5
Pour réaliser les quatre exercices qui suivent, vous aurez besoin de la fonction
nb_aleatoire. Le code qui suit montre comment utiliser cette fonction.
#include <time.h> /* Pour avoir accès à time. */
#include <stdlib.h> /* Pour avoir accès à srand. */
#include <stdio.h> /* Pour avoir accès à printf. */
/*
NB_ALEATOIRE
Cette fonction retourne une valeur aléatoire dans l'intervalle entier
[min, max]. Chaque valeur possède la même probabilité d'être générée.
PARAMÈTRES :
- min : La plus petite valeur pouvant être générée (type : int).
- max : La plus grande valeur pouvant être générée (type : int).
VALEUR DE RETOUR : Une valeur se trouvant dans l'intervalle
[min, max] (type : int).
ANTECEDENTS :
- On suppose que la fonction srand a préalablement été
appelé.
*/
int nb_aleatoire(int min, int max)
{
return min + (int)(rand() / (RAND_MAX + 0.001) * (max min + 1));
}
int main(void)
{
int nombre_aleatoire; /* Reçoit un nombre aléatoire. */
/* On initialise le générateur de nombres aléatoires. */
srand((unsigned int) time(NULL));
rand();
/* On génère un nombre dans l’intervalle [1, 10]. */
nombre_aleatoire = nb_aleatoire(1, 10);
/* On affiche le nombre généré. */
printf("Nombre : %i\n", nombre_aleatoire);
return EXIT_SUCCESS;
}
1 / 21 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !