Voila, je débute en java et je recontre souvent à la compilation des erreurs du type :
alors du coup, pour que ca marche je suis obligé de fairevariable c might not have been initialized
au lieu deint c = 0;J'ai pu lire que lorsqu'on déclarait une variable sans lui inculquer de valeur, elle prenait la valeur par défaut de son type (0 pour int, null pour String me semble). Pourquoi dans mon cas cela ne fonctionne -t -il pas ?int c;
Voila par exemple un code qui ne fonctionne pas (je suis obligé de mettre 0 comme valeur aux variables a, b et c). Ah oui, c'est un code pour trier dans l'ordre croissant des entiers. (comme quoi j'en suis vraiment au début du début) (et cela risque d'être fort inélégant);
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64 import java.io.*; import java.util.Scanner; class Interferences { public static void main(String[] args){ System.out.println("Veuillez entrer 3 nombres"); System.out.println("nombre 1 :"); Scanner scnombre1 = new Scanner(System.in); int nombre1 = scnombre1.nextInt(); System.out.println("nombre 2 :"); Scanner scnombre2 = new Scanner(System.in); int nombre2 = scnombre2.nextInt(); System.out.println("nombre 3 :"); Scanner scnombre3 = new Scanner(System.in); int nombre3 = scnombre3.nextInt(); int a, b, c; if (nombre1<nombre2 && nombre1<nombre3){ a = nombre1; if (nombre2<nombre3){ b = nombre2; c = nombre3; } else { b = nombre3; c = nombre2; } } if (nombre2<nombre1 && nombre2<nombre3){ a = nombre2; if (nombre1<nombre3){ b = nombre1; c = nombre3; } else { b = nombre3; c = nombre1; } } if (nombre3<nombre1 && nombre3<nombre2){ a = nombre3; if (nombre1<nombre2){ b = nombre1; c = nombre2; } else { b = nombre2; c = nombre1; } } System.out.println(a+" "+b+" "+c); } }
Partager