IDENTIFICATION DIVISION.
PROGRAM-ID. MOT-DE-PASSE-DO-WHILE.

DATA DIVISION.
WORKING-STORAGE SECTION.
01  MDP-SAISI           PIC X(10) VALUE SPACES.
01  MDP-CORRECT         PIC X(10) VALUE "secret123".
01  NB-TENTATIVES       PIC 9 VALUE 0.

PROCEDURE DIVISION.
    PERFORM ESSAYER-SAISIE
        UNTIL MDP-SAISI = MDP-CORRECT
           OR NB-TENTATIVES >= 3

    IF MDP-SAISI = MDP-CORRECT
        DISPLAY "Acces autorise ! Bienvenue."
    ELSE
        DISPLAY "Trop de tentatives. Compte bloque."
    END-IF

    STOP RUN.

ESSAYER-SAISIE.
    ADD 1 TO NB-TENTATIVES
    DISPLAY "Tentative numero " NB-TENTATIVES " - Entrez le mot de passe : "
    ACCEPT MDP-SAISI
    DISPLAY " ".