Bonjour,
Comme je l'ai précisé dans la rubrique "études" je m'apprête à entamer une formation afpa de développeur informatique et je m'y prépare en apprenant les bases de certains langages histoire de ne pas être largué et prendre un peu d'avance...

Ceci dit voilà mon problème, en ce moment j'apprends les bases de java à l'aide d'un bouquin que j'ai acheté.
Ce bouquin propose des exercices dont l'un m'interroge.
En effet il était question d'écrire un programme java permettant de faire une calculette, je m'exécute je tape mon code sur papier ensuite je le compile et exécute sur JDK et me rend compte qu'il marche très bien super...
Ensuite je regarde la correction et surprise le code est tout de même différent dans sa rédaction, je me posais donc la question que même si mon programme fonctionnait il était possible qu'il soit mal rédigé tout de même?! qu'en pensez vous?

Voilà mon code:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import java.util.*;
public class machineACalculer
{
public static void main(String [] argument)
{
double premièreValeur, deuxièmeValeur, résultat;
char typeOpération;
Scanner lectureClavier= new Scanner(System.in);
System.out.println("Entrer la première valeur:");
premièreValeur= lectureClavier.nextDouble();
System.out.println("Entrer la deuxième valeur:");
deuxièmeValeur= lectureClavier.nextDouble();
System.out.println("le type d'opération (+,-,*,/):");
typeOpération= lectureClavier.next().charAt(0);
switch(typeOpération)
{
case'+':
résultat= premièreValeur+deuxièmeValeur;
System.out.print("Cette opération a pour résultat:"+résultat);
break;
case'-':
résultat= premièreValeur-deuxièmeValeur;
System.out.print("Cette opération a pour résultat:"+résultat);
break;
case'*':
résultat= premièreValeur*deuxièmeValeur;
System.out.print("Cette opération a pour résultat:"+résultat);
break;
case'/':
	if (deuxièmeValeur!=0)
	{
résultat= premièreValeur/deuxièmeValeur;
System.out.print("Cette opération a pour résultat:"+résultat);
	}
	else
	{
		System.out.print("Opération impossible");
	}
break;
default:
System.out.print("Entrer une opération valide");
System.exit(0);
}
}
}
Celui de la correction:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
import java.util.*;
public class Calculette { 
	public static void main( String [] argument) 
	{ 
	int a, b; 
	char opérateur; 
	double calcul = 0; 
	boolean OK = true; 
	Scanner lectureClavier = new Scanner(System.in); 
	System.out.print("Entrer la premiere valeur : "); 
	a = lectureClavier.nextInt(); 
	System.out.print("Entrer la seconde valeur : "); 
	b = lectureClavier.nextInt(); 
	System.out.print("Type de l'operation : (+, -, *, /) : "); 
	opérateur = lectureClavier.next().charAt(0); 
	switch (opérateur ) { 
	case '+' : calcul = a + b; 
	break; 
	case '-' : calcul = a - b; 
	break; 
	case '/' : if ( b != 0) calcul = a / b; 
	else OK = false; 
	break; 
	case '*' : calcul = a * b ; 
	break; 
	default : OK = false ;  
	} 
	if (OK) { 
	System.out.print("Cette operation a pour resultat : "); 
	System.out.println(a + " " +opérateur+ " "+ b + " = " + calcul); 
	} 
	else System.out.println("Operation non conforme !"); 
	} 
	}
Merci pour votre aide