De l'aide svp pour un programme simple
eplouffe
-
hotrod -
hotrod -
Bonjour, je suis nouvelle en programmation et en code Java. J’ai un devoir à remettre et je n’arrive pas à comprendre où sont mes erreurs. Voilà, je dois créer un programme qui valide un mot de passe d’au moins 8 caractères, avec au moins une lettre majuscule et un chiffre. Il ne doit pas contenir d’autres caractères. Je dois afficher un message pour dire si le mot de passe est valide, s’il est invalide et le programme doit se verrouiller après trois essais invalides. Pouvez-vous m’aider svp?
Voici ce je j'ai de fait :
import java.io.*;
import java.util.*;
import java.lang.*;
import javax.swing.*;
public class TP1_partie2 {
public static void main(String[] args) throws IOException {
// Déclaration des variables nécessaires
String motPasse;
int longMin = 8; //Longueur minimale du mot de passe
char carac;
int i=0; //Initialisation du compteur
boolean possedeUnChiffre;
boolean possedeUneMajuscule;
boolean possedeUnAutre;
boolean obtenirMotPasseValide;
boolean valide;
// Lecture de la chaîne
Scanner clavier = new Scanner(System.in);
System.out.print("Inscrivez un mot de passe (d'au moins 8 caractères, qui contient au moins une lettre majuscule, au moins un chiffre et aucun caractère spécial) : ");
motPasse = obtenirMotPasseValide();
//fin Lecture de la chaîne
// Affichage des résultats
{
System.out.println("Le mot de passe valide est " + motPasse);
} //fin Affichage des résultats
//Boucle pour différents tests
// Vérifier la longueur du mot de passe
{
valide = motPasse.length() >= longMin;
}
// méthode permettant d'obtenir un mot de passe valide
static String obtenirMotPasseValide (String motPasse)throws IOException
{
if (possedeUnChiffre && possedeUneMajuscule && (!possedeUnAutre) && valide)
{
motPasse = motPassevalide;
}
return motPassevalide;
}// fin Méthode mot de passe valide
// méthode permettant de savoir s'il y a un chiffre dans une chaîne
static boolean possedeUnChiffre(String motPasse) throws IOException
{
for (int i=longMin;i<motPasse.length();i++)
{
carac = motPasse.charAt(i);
if (Character.isDigit(carac))
possedeUnChiffre = true;
}
return true;
}
// méthode permettant de savoir s'il y a une lettre majuscule dans une chaîne
static boolean possedeUneMajuscule(String motPasse) throws IOException
{
for (int i=longMin;i<motPasse.length();i++)
{
carac = motPasse.charAt(i);
if (Character.isUpperCase(carac))
possedeUneMajuscule = true;
}
return true;
}
// méthode permettant de savoir s'il y a un caractère autre
// qu'un chiffre ou une lettre dans une chaîne
static boolean possedeUnAutre(String motPasse) throws IOException
{
for (int i=longMin;i<motPasse.length();i++)
{
carac = motPasse.charAt(i);
if (Character.isLetterOrDigit(carac));
possedeUnAutre = false;
}
return false;
}
} //Fin main
Voici ce je j'ai de fait :
import java.io.*;
import java.util.*;
import java.lang.*;
import javax.swing.*;
public class TP1_partie2 {
public static void main(String[] args) throws IOException {
// Déclaration des variables nécessaires
String motPasse;
int longMin = 8; //Longueur minimale du mot de passe
char carac;
int i=0; //Initialisation du compteur
boolean possedeUnChiffre;
boolean possedeUneMajuscule;
boolean possedeUnAutre;
boolean obtenirMotPasseValide;
boolean valide;
// Lecture de la chaîne
Scanner clavier = new Scanner(System.in);
System.out.print("Inscrivez un mot de passe (d'au moins 8 caractères, qui contient au moins une lettre majuscule, au moins un chiffre et aucun caractère spécial) : ");
motPasse = obtenirMotPasseValide();
//fin Lecture de la chaîne
// Affichage des résultats
{
System.out.println("Le mot de passe valide est " + motPasse);
} //fin Affichage des résultats
//Boucle pour différents tests
// Vérifier la longueur du mot de passe
{
valide = motPasse.length() >= longMin;
}
// méthode permettant d'obtenir un mot de passe valide
static String obtenirMotPasseValide (String motPasse)throws IOException
{
if (possedeUnChiffre && possedeUneMajuscule && (!possedeUnAutre) && valide)
{
motPasse = motPassevalide;
}
return motPassevalide;
}// fin Méthode mot de passe valide
// méthode permettant de savoir s'il y a un chiffre dans une chaîne
static boolean possedeUnChiffre(String motPasse) throws IOException
{
for (int i=longMin;i<motPasse.length();i++)
{
carac = motPasse.charAt(i);
if (Character.isDigit(carac))
possedeUnChiffre = true;
}
return true;
}
// méthode permettant de savoir s'il y a une lettre majuscule dans une chaîne
static boolean possedeUneMajuscule(String motPasse) throws IOException
{
for (int i=longMin;i<motPasse.length();i++)
{
carac = motPasse.charAt(i);
if (Character.isUpperCase(carac))
possedeUneMajuscule = true;
}
return true;
}
// méthode permettant de savoir s'il y a un caractère autre
// qu'un chiffre ou une lettre dans une chaîne
static boolean possedeUnAutre(String motPasse) throws IOException
{
for (int i=longMin;i<motPasse.length();i++)
{
carac = motPasse.charAt(i);
if (Character.isLetterOrDigit(carac));
possedeUnAutre = false;
}
return false;
}
} //Fin main
A voir également:
- De l'aide svp pour un programme simple
- Programme demarrage windows - Guide
- Iphone 14 simple - Guide
- Simple pdf - Télécharger - PDF
- Mettre en veille un programme - Guide
- Desinstaller un programme - Guide