【PTA】Vérifier le mot de passe

Veuillez ajouter une description de l'image
Carte de visite personnelle :

blogueur: Alcooliques ᝰ.
Profil personnel: Offrez-vous du vin et aspirez à un avenir avec un verre.
colonne: Exercices et analyse PTA
introduire: Enregistrement de quelques méthodes et notes de blogueurs apprenant des questions pratiques dans pta.

Veuillez ajouter une description de l'image

avant-propos

1. Introduction

La "plate-forme d'enseignement auxiliaire expérimentale de programmation PTA" est une plate-forme d'enseignement auxiliaire pour les cours de programmation dirigés par l'Université du Zhejiang, gérée et exploitée par Hangzhou Baiteng Education Technology Co., Ltd., et construite conjointement par des enseignants de collèges et d'universités à travers le pays. À l'heure actuelle, 538 collèges et universités à travers le pays ont participé, et 3 152 enseignants ont construit conjointement 66 095 sujets de haute qualité, et le nombre d'étudiants inscrits a atteint 1,36 million ; il existe 14 ensembles de sujets fixes (couvrant le langage C, le langage JAVA, langage Python, structure de données, système de base de données) et China University Computer Competition Question Bank) et 55 ensembles de sujets de cours professionnels (couvrant l'informatique, l'électronique, la littérature, les langues étrangères et la certification Huawei). Il existe 10 types de questions, y compris les questions vraies et fausses, les questions à remplir, les questions à choix multiples, les questions à choix multiples, les questions de programme à remplir, les questions de fonction, les questions de programmation, les questions subjectives, questions de programmation multi-fichiers et questions de programmation SQL.

2. Avantages

  • Soutenez 200 000 personnes en ligne en même temps
  • Prise en charge de plusieurs types de questions
  • Prend en charge une variété de modes de jugement
  • Fournir une garantie complète pour la qualité de l'enseignement
  • Système de réponse instantanée aux questions

1. Le sujet

Cette question nécessite que vous aidiez le module d'enregistrement des utilisateurs d'un site Web à écrire une petite fonction pour vérifier la validité des mots de passe. Le site Web exige que le mot de passe défini par l'utilisateur soit composé d'au moins 6 caractères et ne puisse contenir que des lettres, des chiffres et des points décimaux en anglais, ainsi que des lettres et des chiffres.

Format de saisie :
Entrez un entier positif N (≤ 100) dans la première ligne, suivi de N lignes, chaque ligne donne un mot de passe défini par l'utilisateur, qui est une chaîne non vide de pas plus de 80 caractères, et se termine par un retour chariot.
Remarque : Le titre garantit qu'il n'y a pas de saisie avec uniquement un point décimal.

Format de sortie :
pour le mot de passe de chaque utilisateur, affichez les informations de retour système sur une seule ligne, divisées selon les 5 types suivants :

  • Si le mot de passe est valide, affichez Votre mot de passe est wan mei.;
  • Si le mot de passe est trop court, affichez Votre mot de passe est tai duan le, qu'il soit légal ou non ;
  • Si la longueur du mot de passe est légale, mais qu'il y a des caractères illégaux, la sortie Votre mot de passe est tai luan le.;
  • Si la longueur du mot de passe est légale, mais uniquement des lettres et pas de chiffres, affichez Votre mot de passe nécessite shu zi.;
  • Si la longueur du mot de passe est légale, mais uniquement des chiffres sans lettres, affichez Votre mot de passe nécessite zi mu..

Échantillon d'entrée :

5
123s
zheshi.wodepw
1234.5678
WanMei23333
passe * mot.6

Exemple de sortie :

Votre mot de passe est tai duan le.
Votre mot de passe nécessite shu zi.
Votre mot de passe nécessite zi mu.
Votre mot de passe est wan mei.
Votre mot de passe est tai luan le.

Limite de longueur de code 16 Ko
Limite de temps 400 ms
Limite de mémoire 64 Mo

2.Code

import java.util.Scanner;
public class Main {
    
    
    public static void main(String[] args) {
    
    
        Scanner sc = new Scanner(System.in);
        String s = sc.nextLine();
        int N = Integer.parseInt(s);
        String[] str = new String[N];
        for (int i = 0; i < N; i++) {
    
    
            str[i] = sc.nextLine();
        }
        for (int i = 0; i < N; i++) {
    
    
            if (str[i].length() < 6){
    
    
                System.out.println("Your password is tai duan le.");
            }else {
    
    
                String num = str[i];
                int character = 0;//字符
                int number = 0;//数字
                int letter = 0;//字母
                for (int j = 0; j < str[i].length(); j++) {
    
    
                    if ((num.charAt(j) > 'a'&& num.charAt(j) < 'z') || (num.charAt(j) > 'A'&& num.charAt(j) < 'Z')){
    
    
                        letter = 1;
                    }else if (num.charAt(j) > '0'&& num.charAt(j) < '9'){
    
    
                        number = 1;
                    }else if (num.charAt(j) == '.'){
    
    
                        character = 1;
                    }else {
    
    
                        character = 2;
                    }
                }
                if (character == 2){
    
    
                    System.out.println("Your password is tai luan le.");
                } else if (character == 1 && letter == 1 && number == 0) {
    
    
                    System.out.println("Your password needs shu zi.");
                } else if (character == 1 && letter == 0 && number == 1) {
    
    
                    System.out.println("Your password needs zi mu.");
                } else if (character == 1 && letter == 1 && number == 1) {
    
    
                    System.out.println("Your password is wan mei.");
                }
            }
        }
    }
}

Je suppose que tu aimes

Origine blog.csdn.net/m0_65144570/article/details/127098535
conseillé
Classement