Besoin d'aide pour mon programme
Résolu
Sarkox
-
Sarkox Messages postés 2 Statut Membre -
Sarkox Messages postés 2 Statut Membre -
Bonjour,
j'ai commencé depuis peu de temps à programmer,
j'ai écrit un programme (banale) pour trouver en % ton résultat de test ou |d'examen,
voici le Programme:
Pouvez-vous m'aider a trouver l'erreur dans le code ? S.V.P Merci
j'ai commencé depuis peu de temps à programmer,
j'ai écrit un programme (banale) pour trouver en % ton résultat de test ou |d'examen,
voici le Programme:
Pouvez-vous m'aider a trouver l'erreur dans le code ? S.V.P Merci
import java.util.Scanner;
public class Sdz1 {
public static void main(String[] args) {
String note;
String resultat;
char reponse = 'O';
double nbre1 = 0, nbre2 = 0;
Scanner sc = new Scanner(System.in);
While (reponse == 'O');
{
System.out.println("Veulliez saisir votre note");
resultat = sc.nextLine();
System.out.println("Veulliez saisir le nombre décimal /?");
note = sc.nextLine();
nbre1 = resultat * 100; // l'erreur est ici
System.out.println("ta note en % est :" resultat / note);
System.out.println("Voulez-vous réessayer? (O/N)");
reponse = sc.nextLine().charAt(0);
}
System.out.println("Au revoir...");
}
}
A voir également:
- Besoin d'aide pour mon programme
- Programme demarrage windows - Guide
- Programme word gratuit - Guide
- Message programmé iphone - Guide
- Mettre en veille un programme - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans un autre programme - Guide
2 réponses
Bonjour,
resultatest un String, donc ce n'est pas un nombre, tu ne peux pas faire de multiplication si ce n'est pas un nombre...
comment je peu faire pour enregistrer mon programme en .Jar, pour y avoir accès partout, pas seulement sur la petite console :/
P.s: j'ai arranger mon programme:
import java.util.Scanner;
public class sdz1 {
public static void main(String[] args) {
char reponse = 'O';
double nbre1 = 0;
double nbre2 = 0;
double note;
double resultat;
Scanner sc = new Scanner(System.in);
while (reponse == 'O')
{
System.out.println("Veulliez saisir votre note");
resultat = sc.nextDouble(); sc.nextLine();
System.out.println("Veulliez saisir le nombre décimal /?");
note = sc.nextDouble(); sc.nextLine();
nbre1 = resultat * 100;
nbre2 = nbre1 / note;
System.out.println("ta note en % est :" + nbre2);
reponse = ' ';
while(reponse != 'O' && reponse != 'N')
{
System.out.println("Voulez-vous réessayer? (O/N)");
reponse = sc.nextLine().charAt(0);
}
}
System.out.println("Au revoir...");
}
}
P.s: j'ai arranger mon programme:
import java.util.Scanner;
public class sdz1 {
public static void main(String[] args) {
char reponse = 'O';
double nbre1 = 0;
double nbre2 = 0;
double note;
double resultat;
Scanner sc = new Scanner(System.in);
while (reponse == 'O')
{
System.out.println("Veulliez saisir votre note");
resultat = sc.nextDouble(); sc.nextLine();
System.out.println("Veulliez saisir le nombre décimal /?");
note = sc.nextDouble(); sc.nextLine();
nbre1 = resultat * 100;
nbre2 = nbre1 / note;
System.out.println("ta note en % est :" + nbre2);
reponse = ' ';
while(reponse != 'O' && reponse != 'N')
{
System.out.println("Voulez-vous réessayer? (O/N)");
reponse = sc.nextLine().charAt(0);
}
}
System.out.println("Au revoir...");
}
}
Même en l'enregistrant en .jar tu devras le lancer avec une console quand même.
Tout ce que tu as fait avec System.in et System.out ne peut s'utiliser qu'en console.
Donc je peux te dire comment le mettre en .jar, mais je pense que c'est une manipulation inutile vu que cela ne fera de toute façon pas ce que tu veux au final...
Tout ce que tu as fait avec System.in et System.out ne peut s'utiliser qu'en console.
Donc je peux te dire comment le mettre en .jar, mais je pense que c'est une manipulation inutile vu que cela ne fera de toute façon pas ce que tu veux au final...
Dans ton cas, il faut créer un dossier avec ce contenu :
Le fichier MANIFEST.MF est un fichier texte avec ce contenu :
Remarque : ne pas oublier la ligne vide à la fin.
Ensuite tu créé un zip avec tout ça et tu changes l'extension en .jar
Pour le démarrer ensuite, tu ouvres une invite de commande et tu fais :
META-INF
MANIFEST.MF
projet1
sdz1.class
Le fichier MANIFEST.MF est un fichier texte avec ce contenu :
Manifest-Version: 1.0
Main-Class: projet1.sdz1
Remarque : ne pas oublier la ligne vide à la fin.
Ensuite tu créé un zip avec tout ça et tu changes l'extension en .jar
Pour le démarrer ensuite, tu ouvres une invite de commande et tu fais :
java -jar nomDeTonFichier.jar
pour le dossier que je doit crée, je fait que crée un dossier test et j'écrit ça
META-INF
MANIFEST.MF
projet1
sdz1.class
et apres je crée un autre dossier ou j'écrit ça:
Manifest-Version: 1.0
Main-Class: projet1.sdz1
puis finalement je crée un autre fichier text avec:
Java -jar nomDeTonFicher,jar
puis je le renomme en .Bat
META-INF
MANIFEST.MF
projet1
sdz1.class
et apres je crée un autre dossier ou j'écrit ça:
Manifest-Version: 1.0
Main-Class: projet1.sdz1
puis finalement je crée un autre fichier text avec:
Java -jar nomDeTonFicher,jar
puis je le renomme en .Bat
Voila ce que j'ai mis:
package projet1; import java.util.Scanner; public class sdz1 { public static void main(String[] args) { char reponse = 'O'; double nbre1 = 0, nbre2 = 0; double note; double resultat; Scanner sc = new Scanner(System.in); While (reponse == 'O'); { System.out.println("Veulliez saisir votre note"); resultat = sc.nextDouble(); sc.nextLine(); System.out.println("Veulliez saisir le nombre décimal /?"); note = sc.nextDouble(); sc.nextLine(); nbre1 = resultat * 100; System.out.println("ta note en % est :" resultat / note); System.out.println("Voulez-vous réessayer? (O/N)"); reponse = sc.nextLine().charAt(0); } System.out.println("Au revoir..."); } }1) Il ne faut pas écrire mais ...
2) Il ne faut pas mettre de après la condition car cela court-circuite la suite.
3) est mal écrit, il faut concaténer les différents éléments : .
4) Mathématiquement tes calculs sont faux.