(Erreur de débutant, je suis sûr.)
Je suis un étudiant en informatique de première année, et j'essaie d'écrire un programme pour un devoir, avec le code;
import Java.util.Scanner;
public class Lab10Ex1 {
public static void main(String[] arg) {
Scanner keyboard = new Scanner(System.in);
System.out.println("Please type a number: ");
int n = keyboard.nextInt();
calcNumFactors();
}
public static void calcNumFactors(){
System.out.print(n + 1);
}
}
Mais lors de la compilation, j'obtiens l'erreur;
Lab10Ex1.Java:10: erreur: impossible de trouver le symbole System.out.print (n + 1); ^
symbole: variable n
emplacement: classe Lab10Ex1
Si quelqu'un pouvait m'expliquer ce que j'avais fait de mal ou comment y remédier, je l'apprécierais grandement.
La variable n
a été déclarée dans la méthode main
et n'est donc visible que dans la méthode main, nulle part ailleurs, et certainement pas à l'intérieur de la méthode calcNumFactors
. Pour résoudre ce problème, donnez à votre méthode calcNumFactors
un paramètre int
qui permettrait aux méthodes d'appel de passer un int
, tel que n
dans la méthode.
public static void calcNumFactors(int number) {
// work with number in here
}
et appelez-le ainsi:
int n = keyboard.nextInt();
calcNumFactors(n);
Vous devez déclarer la variable n
dans public static void calcNumFactors()
Dans votre code, vous devez passer la valeur de n comme argument à la fonction calcNumFactors()
comme l'a dit Hovercraft Full Of Eels.
import Java.util.Scanner;
public class Lab10Ex1 {
private static int n;
public static void main(String[] arg) {
Scanner keyboard = new Scanner(System.in);
System.out.println("Please type a number: ");
n = keyboard.nextInt();
calcNumFactors();
}
public static void calcNumFactors(){
System.out.print(n + 1);
}
}