bonjour,
j’ai commencé à apprendre le java il y a quelques jours en suivant un tuto dans lequel figure un TP qui nous demande de créer un convertisseur celsius - fahrenheit mais je n’arrive pas a faire fonctionner une boucle while.
mon code :
import java.util.*;
public class first {
public static void main(String[] args) {
char reponse = ‘O’;
Scanner co = new Scanner (System.in);
while(reponse == ‘O’)
{
int temp;
System.out.println("Choisissez votre conversion: ");
System.out.println(“1-Celsius vers Fahrenheit”);
System.out.println(“2-fahrenheit vers Celsius”);
temp = co.nextInt();
switch (temp)
{
case 1:
System.out.println(“température à convertir:”);
double celsius = co.nextDouble();
double far = ((9.0 / 5.0) * celsius) + 32f;
System.out.println(“température en fahrenheit :” + far);
break;
case 2:
double celsius2;
System.out.println("température à convertir:");
double far2 = co.nextDouble();
celsius2 = ( ( far2 - 32 ) * 5 ) / 9;
System.out.println("température en celsius :" + celsius2);
break;
default:
System.out.println("erreur");
}
System.out.println("recommencer?");
System.out.println("O/N");
reponse = co.nextLine().charAt(0);
}
co.close();
}
}
et le message d’erreur :
Choisissez votre conversion:
1-Celsius vers Fahrenheit
2-fahrenheit vers Celsius
1
température à convertir:
9
température en fahrenheit :48.2
recommencer?
O/N
Exception in thread “main” java.lang.StringIndexOutOfBoundsException: String index out of range: 0
at java.lang.String.charAt(Unknown Source)
at first.main(first.java:37)
le programme bug lorsque la boucle devrait logiquement recommencer , pouvez vous m’aider svp