Détermination du maximum des nombres saisis au clavier classés dans un tableau e

Debord10 Messages postés 45 Date d'inscription mercredi 23 mars 2011 Statut Membre Dernière intervention 7 juin 2013 - 22 mai 2011 à 01:27
Debord10 Messages postés 45 Date d'inscription mercredi 23 mars 2011 Statut Membre Dernière intervention 7 juin 2013 - 23 mai 2011 à 10:20
Salut!
Je suis encore un débutant,je cherche quelqu'un qui puisse m'aider à faire marcher ce petit programme.Le programme affiche le maximum parmi les nombres saisis au clavier et classés dans un tableau;voilà ce que je propose:

public class Maximum1 {

/**
* Creates a new instance of
Maximum1
.
*/
public Maximum1() {
}

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
double v[];
int i;
double Max;
System.out.println("Saisir N");
final int N=Console.lireEntier();
for(i=1;i<=N-1;i++)
//v[i]={'1'};
v[i]=Console.lireDouble("v");
Max=v[0];
for(i=1;i<=N-1;i++)
Max=v[i]>Max?v[i]:Max;
System.out.println("Le maximum est:"+Max);

}
}

Svp aider moi,je tout fais il m'envoi ce méssage d'érreur:

"C:\Pragramme\Maximum1.java:29: variable v might not have been initialized
v[i]=Console.lireDouble("v");
^
C:\Pragramme\Maximum1.java:30: variable v might not have been initialized
Max=v[0];
^
2 errors

Process completed".

6 réponses

cs_GodConan Messages postés 2113 Date d'inscription samedi 8 novembre 2003 Statut Contributeur Dernière intervention 6 octobre 2012 12
22 mai 2011 à 10:36
faisons par étape :
final int N=Console.lireEntier();
déjà, d'ou tiens tu cette méthode static???? Je ne la connais depuis la class java.io.Console....

pour localiser précisement une erreur il faut séparrer distinctement toutes les actions...


PS : la méthode Math.max(double,double) simplifie avantageusement ta derniere alternative... ;o)


GodConan ;o)
0
Debord10 Messages postés 45 Date d'inscription mercredi 23 mars 2011 Statut Membre Dernière intervention 7 juin 2013
22 mai 2011 à 21:36
Salut!
merci de s'intéresser à ma requête,je final int N=Console.LireEntier();
c'est une constance qui donne les nbres des valeurs à entrer au clavier,voilà pourquoi je l'est initialiser dirctement.
Merci encore d'avance!
0
cs_GodConan Messages postés 2113 Date d'inscription samedi 8 novembre 2003 Statut Contributeur Dernière intervention 6 octobre 2012 12
22 mai 2011 à 22:58
j avais compris...;o) l'erreur vient donc de la!!!...
à l'évidence ce n est pas l initialisation de 'N' qui produit l'erreur... mais le non traitement d'une erreur possible dans ta methode 'lireentier' qui entraine la non initialisation de cette variable...

(au passage : on évite, en java, l'utilisation des Capitales en 1er caractère, préferer 'n' plutot que 'N') ...

GodConan ;o)
0
Debord10 Messages postés 45 Date d'inscription mercredi 23 mars 2011 Statut Membre Dernière intervention 7 juin 2013
23 mai 2011 à 00:43
Salut!
Merci beaucoup GodConan,mais comment dois-je traiter cette érreur c'est ça le blem je ne sais pas on le fait en Java;je vous avez dis que j'étais débutant vraiment du bas niveau!aidez moi.
Encore merci pour la compréhension.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_GodConan Messages postés 2113 Date d'inscription samedi 8 novembre 2003 Statut Contributeur Dernière intervention 6 octobre 2012 12
23 mai 2011 à 05:46
ben montre tout le code....


GodConan ;o)
0
Debord10 Messages postés 45 Date d'inscription mercredi 23 mars 2011 Statut Membre Dernière intervention 7 juin 2013
23 mai 2011 à 10:20
Salut!
Voilà le code:
public class Maximum1 {

/**
* Creates a new instance of
Maximum1
.
*/
public Maximum1() {
}

/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
double v[];
int i;
double Max;
System.out.println("Saisir N");
final int N=Console.lireEntier("N");
for(i=1;i<=N-1;i++)
{

v[i]=Console.lireDouble("v");
}
Max=v[0];
for(i=1;i<=N-1;i++)
{Max=v[i]>Max?v[i]:Max;}
System.out.println("Le maximum est:"+Max);

}
}
0
Rejoignez-nous