Introduction
Dans ce laboratoire, vous apprendrez à évaluer des fonctions par morceaux en programmation C. Le laboratoire couvre les étapes pour lire une valeur d'entrée, utiliser les instructions if/else pour déterminer quelle formule appliquer et afficher le résultat évalué. Vous commencerez par demander à l'utilisateur d'entrer une valeur pour la variable x, puis vous implémenterez une fonction par morceaux avec différentes formules en fonction de la valeur d'entrée. Ce laboratoire vous aidera à développer vos compétences dans le travail avec les expressions algébriques et la logique conditionnelle en C.
Lecture de la valeur d'entrée x
Dans cette étape, vous apprendrez à lire une valeur d'entrée pour une fonction par morceaux en programmation C. Nous allons créer un programme simple qui permet aux utilisateurs d'entrer une valeur numérique à utiliser dans l'évaluation de la fonction.
Tout d'abord, créons un nouveau fichier C dans le répertoire du projet :
cd ~/project
nano piecewise_function.c
Maintenant, ajoutez le code suivant au fichier :
#include <stdio.h>
int main() {
double x;
// Demander à l'utilisateur d'entrer une valeur pour x
printf("Entrez une valeur pour x : ");
// Lire la valeur d'entrée
scanf("%lf", &x);
// Afficher la valeur d'entrée pour confirmation
printf("Vous avez entré x = %.2f\n", x);
return 0;
}
Compilez le programme :
gcc piecewise_function.c -o piecewise_function
Exécutez le programme :
./piecewise_function
Exemple de sortie :
Entrez une valeur pour x : 5.5
Vous avez entré x = 5.50
Décomposons le code :
#include <stdio.h>inclut la bibliothèque d'entrée/sortie standarddouble x;déclare une variable pour stocker la valeur d'entréeprintf()affiche une invite à l'utilisateurscanf()lit la valeur d'entrée comme un nombre à virgule flottante double précision%.2fformate la sortie pour afficher deux décimales
Utilisation de if/else pour déterminer la formule à appliquer
Dans cette étape, vous allez modifier le programme précédent pour implémenter une fonction par morceaux à l'aide d'instructions if/else. Nous allons créer une fonction avec différentes formules en fonction de la valeur d'entrée x.
Mettre à jour le fichier piecewise_function.c :
cd ~/project
nano piecewise_function.c
Remplacez le contenu précédent par le code suivant :
#include <stdio.h>
// Définition d'une fonction par morceaux
double piecewise_function(double x) {
// Condition 1 : Si x est inférieur à 0
if (x < 0) {
return x * x; // f(x) = x^2 pour x < 0
}
// Condition 2 : Si x est compris entre 0 et 5
else if (x >= 0 && x < 5) {
return 2 * x + 3; // f(x) = 2x + 3 pour 0 ≤ x < 5
}
// Condition 3 : Si x est supérieur ou égal à 5
else {
return x - 2; // f(x) = x - 2 pour x ≥ 5
}
}
int main() {
double x;
// Demander à l'utilisateur d'entrer une valeur pour x
printf("Entrez une valeur pour x : ");
// Lire la valeur d'entrée
scanf("%lf", &x);
// Calculer et afficher le résultat de la fonction par morceaux
double result = piecewise_function(x);
printf("f(%.2f) = %.2f\n", x, result);
return 0;
}
Compiler le programme :
gcc piecewise_function.c -o piecewise_function
Exécuter le programme avec différentes valeurs d'entrée :
./piecewise_function
Exemple de sortie 1 :
Entrez une valeur pour x : -2
f(-2.00) = 4.00
Exemple de sortie 2 :
Entrez une valeur pour x : 3
f(3.00) = 9.00
Exemple de sortie 3 :
Entrez une valeur pour x : 6
f(6.00) = 4.00
Décomposons le code :
piecewise_function()implémente trois formules différentes en fonction de la valeur de x- Les instructions
if/elsevérifient les conditions et appliquent la formule appropriée - La fonction retourne la valeur calculée en fonction de l'entrée x
Affichage du résultat évalué
Dans cette dernière étape, vous améliorerez le programme de fonction par morceaux pour fournir une sortie plus détaillée et démontrer le comportement de la fonction dans différentes plages d'entrée.
Modifions le fichier piecewise_function.c pour ajouter une impression de résultat plus complète :
cd ~/project
nano piecewise_function.c
Mettez à jour le code avec la mise en œuvre suivante :
#include <stdio.h>
// Définition d'une fonction par morceaux
double piecewise_function(double x) {
// Condition 1 : Si x est inférieur à 0
if (x < 0) {
return x * x; // f(x) = x^2 pour x < 0
}
// Condition 2 : Si x est compris entre 0 et 5
else if (x >= 0 && x < 5) {
return 2 * x + 3; // f(x) = 2x + 3 pour 0 ≤ x < 5
}
// Condition 3 : Si x est supérieur ou égal à 5
else {
return x - 2; // f(x) = x - 2 pour x ≥ 5
}
}
int main() {
double x;
// Demander à l'utilisateur d'entrer une valeur pour x
printf("Evaluateur de fonction par morceaux\n");
printf("Règles de la fonction :\n");
printf(" f(x) = x^2 pour x < 0\n");
printf(" f(x) = 2x + 3 pour 0 ≤ x < 5\n");
printf(" f(x) = x - 2 pour x ≥ 5\n\n");
printf("Entrez une valeur pour x : ");
// Lire la valeur d'entrée
scanf("%lf", &x);
// Calculer le résultat de la fonction par morceaux
double result = piecewise_function(x);
// Fournir une sortie détaillée
printf("\nAnalyse de l'entrée :\n");
printf(" Valeur d'entrée x : %.2f\n", x);
// Déterminer et afficher la formule appliquée
if (x < 0) {
printf(" Formule appliquée : f(x) = x^2\n");
}
else if (x >= 0 && x < 5) {
printf(" Formule appliquée : f(x) = 2x + 3\n");
}
else {
printf(" Formule appliquée : f(x) = x - 2\n");
}
// Afficher le résultat final
printf(" Résultat f(x) : %.2f\n", result);
return 0;
}
Compiler le programme :
gcc piecewise_function.c -o piecewise_function
Exécuter le programme avec différentes valeurs d'entrée :
./piecewise_function
Exemple de sortie 1 (x < 0) :
Evaluateur de fonction par morceaux
Règles de la fonction :
f(x) = x^2 pour x < 0
f(x) = 2x + 3 pour 0 ≤ x < 5
f(x) = x - 2 pour x ≥ 5
Entrez une valeur pour x : -3
Analyse de l'entrée :
Valeur d'entrée x : -3.00
Formule appliquée : f(x) = x^2
Résultat f(x) : 9.00
(Exemples de sortie 2 et 3 similaires)
Résumé
Dans ce laboratoire, vous avez appris à lire une valeur d'entrée pour une fonction par morceaux en programmation C et comment utiliser les instructions if/else pour déterminer quelle formule appliquer en fonction de la valeur d'entrée. Vous avez créé un programme simple permettant aux utilisateurs d'entrer une valeur numérique, puis d'évaluer la fonction par morceaux en utilisant différentes formules selon la valeur de x. Les points clés sont la lecture de l'entrée utilisateur, la mise en œuvre de la logique conditionnelle avec les instructions if/else et l'application de différentes formules mathématiques au sein d'une fonction par morceaux.



