Exercices pratiques résolus pendant une séance en ligne
Exercice 3 : Les Variables
Imaginez un programme en C qui demande deux nombres à l'utilisateur : Essayez de coder vous-même ce petit programme, c'est facile et ça vous entraînera !
Stockez ces deux nombres dans des variables
Faites la somme de ces variables
Stockez le résultat dans une variable appelée <<resultat>>
Voir le corrigé
int main(int argc, char *argv[])
{
int resultat = 0, nombre1 = 0, nombre2 = 0;
// On demande les nombres 1 et 2 à l'utilisateur :
printf("Entrez le nombre 1 : ");
scanf("%d", &nombre1);
printf("Entrez le nombre 2 : ");
scanf("%d", &nombre2);
// On fait le calcul :
resultat = nombre1 + nombre2;
// Et on affiche l'addition à l'écran :
printf ("%d + %d = %d\n", nombre1, nombre2, resultat);
return 0;
}
Exercice 4 : Les Variables et fonctions
Imaginez un programme en Java qui converti des Celsius en Fahrenheit: Essayez de coder vous-même ce petit programme, c'est facile et ça vous entraînera !
Vous n'avez plus qu'à afficher le résultat du calcul à l'écran, sous les yeux ébahis de l'utilisateur qui n'aurait jamais été capable de calculer cela de tête aussi vite.
le programme demande quelle conversion nous souhaitons effectuer, Celsius vers Fahrenheit ou l'inverse
on n'autorise que les modes de conversion définis dans le programme (un simple contrôle sur la saisie fera l'affaire)
enfin, on demande à la fin à l'utilisateur s'il veut faire une nouvelle conversion, ce qui signifie que l'on doit pouvoir revenir au début du programme
Voir le corrigé
import java.util.Scanner;
class Test {
public static void main(String[] args) {
//Notre objet Scanner
Scanner sc = new Scanner(System.in);
//initialisation des variables
double aConvertir, convertit=0;
char reponse=' ', mode = ' ';
System.out.println("CONVERTISSEUR DEGRÉS CELSIUS ET DEGRÉS FAHRENHEIT");
System.out.println("-------------------------------------------------");
do{//tant que reponse = O //boucle principale
do{//tant que reponse n'est pas O ou N
mode = ' ';
System.out.println("Choisissez le mode de conversion : ");
System.out.println("1 - Convertisseur Celsius - Fahrenheit");
System.out.println("2 - Convertisseur Fahrenheit - Celsius ");
mode = sc.nextLine().charAt(0);
if(mode != '1' && mode != '2')
System.out.println("Mode inconnu, veuillez réitérer votre choix.");
}while (mode != '1' && mode != '2');
//saisie de la température à convertir
System.out.println("Température à convertir :");
aConvertir = sc.nextDouble();
//Pensez à vider la ligne lue
sc.nextLine();
//Selon le mode, on calcule différemment et on affiche le résultat
if(mode == '1'){
convertit = ((9.0/5.0) * aConvertir) + 32.0;
System.out.print(aConvertir + " °C correspond à : ");
System.out.println(arrondi(convertit, 2) + " °F.");
}
else{
convertit = ((aConvertir - 32) * 5) / 9;
System.out.print(aConvertir + " °F correspond à : ");
System.out.println(arrondi(convertit, 2) + " °C.");
}
//On invite l'utilisateur à recommencer ou à quitter
do{
System.out.println("Souhaitez-vous convertir une autre température ?(O/N)");
reponse = sc.nextLine().charAt(0);
}while(reponse != 'O' && reponse != 'N');
}while(reponse == 'O');
System.out.println("Au revoir !");
//Fin de programme
}
public static double arrondi(double A, int B) {
return (double) ( (int) (A * Math.pow(10, B) + .5)) / Math.pow(10, B);
}
}