Quelqu' peut me dire si il y a un probleme dans mon code ?

Abdeldevlopper Messages postés 5 Statut Membre -  
barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   -
@echo off 
title The Quizz Neverland
mode 120,40
goto :DEBUT
::VARIABLES::
set /a rep_ok=0
set /a rep_ko=0
set /a rep1=2
set /a rep2=1
set /a rep3=3
set /a rep4=1
set /a rep5=3
set /a rep6=2
set /a rep7=1
set /a rep8=3
set /a rep9=2
set /a rep_10=2
:REJOUER
cls 
echo. 
choice /c on /m "ENCORE UNE PARTIE ?" 
if errorlevel 1 goto PRENOM
if errorlevel 2 ( 
exit 

:DEBUT
color 0F
echo                                                         ________
echo                              _________        __  __   /   _____\
echo                              \___  ___\      / /_/ /   \  \______       
echo                                  \ \        / _   /     \    ____\
echo                                   \ \      / / / /       \  \______    
echo                                    \_\    /_/ /_/         \________\                                 
timeout /t 2  /nobreak >nul
color 0C
echo                        _____                    ___       ________     _________
echo                       /     \                   \_/       \       \    \        \
echo                      /   _   \   ___     __      ___       \_____  \    \_____   \
echo                     /   / \   \  \  \    \ \     \  \           /  /          /  /
echo                     \   \_/   /   \  \    \ \     \  \         /  /          /  /
echo                      \       /     \  \    \ \     \  \       /  /          /  /
echo                       \____\ \      \  \____\ \     \  \     /  /_____     /  /_____
echo                             \_\      \_________\     \__\   /________/    /________/
timeout /t 2 /nobreak >nul 
color 02          
echo                         _____               _____                                                    _____
echo            __    ___   / ____/             / ____/_______                              __    ___    /  __ \
echo           /  \  /  /  / /_    _       _   / /_    \  /\ /  ___              ___       /  \  /  /    / /  \ \
echo          /    \/  /  / ___\  \ \     / / / ___\    \ \//   \  \            // \\     /    \/  /    / /    \ \
echo         /  /\    /  / /_____  \ \   / / / /_____    \  \__  \  \          / \_/ \   /  /\    /    / /     / /
echo        /__/ /___/  /_______/   \ \_/ / /_______/     \  _ \  \  \______  /  / \  \ /__/ /___/  __/ /_____/ /
echo                                 \___/                 \_\\_\  \________\/__/   \_ \           /___________/
timeout /t 2 /nobreak >nul
color 0f
pause
cls
echo CHARGEMENT .                                                                    
echo ____                                                 \
timeout /t 1 /nobreak >nul
cls
echo CHARGEMENT ..
echo __________                                           \
timeout /t 1 /nobreak >nul
cls
echo CHARGEMENT ...
echo ___________________                                  \
timeout /t 1 /nobreak >nul
cls
echo CHARGEMENT .
echo __________________________________                   \
timeout /t 1 /nobreak >nul
cls
echo CHARGEMENT ..
echo ____________________________________________         \
timeout /t 1 /nobreak >nul
cls
echo CHARGEMENT ...
echo _____________________________________________________\
timeout /t 1 /nobreak >nul
cls
pause
cls
:PRENOM
echo Comment tu t'appelle ?
echo.
echo.
echo.
set /p nom="Nom : "
cls
color 0C
echo OK %nom%
timeout /t 2 /nobreak >nul
:Q1
cls
color 0F
pause
CLS
echo Q1.Dans quel genre d'etablissement sont heberges Emma, Norman et Ray ?  ?
echo.
echo.
echo 1-Un Internat
echo 2-Orphelinat
echo 3-Hotel 
echo.
set /p Orphelinat="Reponse (chiffre) 1,2 ou 3 :  "
cls 
if %Orphelinat% EQU %rep1% (
set /a rep_ok=%rep_ok%+1 
goto Q2
) else (
set /a rep_ko=%rep_ko%+1
goto Q2
)
:Q2
echo bonjour
pause=nul

1 réponse

  1. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930
     
    Bonjour,

    1) Cette ligne non complétée va poser problème :
    if errorlevel 2 (

    Il suffit simplement de la supprimer.

    2) Quelques remarques :

    - pourquoi utiliser SET /A au début du script alors que SET suffit ?
    - les 2 lignes GOTO :Q2 sont inutiles, tu peux les supprimer

    1
    1. Abdeldevlopper Messages postés 5 Statut Membre 4
       
      Comme ca ca va ?
      @echo off
      title The Quizz Neverland
      mode 120,40
      goto :DEBUT
      ::VARIABLES::
      set rep_ok=0
      set rep_ko=0
      set rep1=2
      set rep2=1
      set rep3=3
      set rep4=1
      set rep5=3
      set rep6=2
      set rep7=1
      set rep8=3
      set rep9=2
      set rep10=2
      :REJOUER
      cls
      echo.
      choice /c on /m "ENCORE UNE PARTIE ?"
      if errorlevel 1 goto PRENOM
      exit

      :DEBUT
      color 0F
      echo ________
      echo _________ __ __ / _____\
      echo \___ ___\ / /_/ / \ \______
      echo \ \ / _ / \ ____\
      echo \ \ / / / / \ \______
      echo \_\ /_/ /_/ \________\
      timeout /t 2 /nobreak >nul
      color 0C
      echo _____ ___ ________ _________
      echo / \ \_/ \ \ \ \
      echo / _ \ ___ __ ___ \_____ \ \_____ \
      echo / / \ \ \ \ \ \ \ \ / / / /
      echo \ \_/ / \ \ \ \ \ \ / / / /
      echo \ / \ \ \ \ \ \ / / / /
      echo \____\ \ \ \____\ \ \ \ / /_____ / /_____
      echo \_\ \_________\ \__\ /________/ /________/
      timeout /t 2 /nobreak >nul
      color 02
      echo _____ _____ _____
      echo __ ___ / ____/ / ____/_______ __ ___ / __ \
      echo / \ / / / /_ _ _ / /_ \ /\ / ___ ___ / \ / / / / \ \
      echo / \/ / / ___\ \ \ / / / ___\ \ \// \ \ // \\ / \/ / / / \ \
      echo / /\ / / /_____ \ \ / / / /_____ \ \__ \ \ / \_/ \ / /\ / / / / /
      echo /__/ /___/ /_______/ \ \_/ / /_______/ \ _ \ \ \______ / / \ \ /__/ /___/ __/ /_____/ /
      echo \___/ \_\\_\ \________\/__/ \_ \ /___________/
      timeout /t 2 /nobreak >nul
      color 0f
      pause
      cls
      echo CHARGEMENT .
      echo ____ \
      timeout /t 1 /nobreak >nul
      cls
      echo CHARGEMENT ..
      echo __________ \
      timeout /t 1 /nobreak >nul
      cls
      echo CHARGEMENT ...
      echo ___________________ \
      timeout /t 1 /nobreak >nul
      cls
      echo CHARGEMENT .
      echo __________________________________ \
      timeout /t 1 /nobreak >nul
      cls
      echo CHARGEMENT ..
      echo ____________________________________________ \
      timeout /t 1 /nobreak >nul
      cls
      echo CHARGEMENT ...
      echo _____________________________________________________\
      timeout /t 1 /nobreak >nul
      cls
      pause
      cls
      :PRENOM
      echo Comment tu t'appelle ?
      echo.
      echo.
      echo.
      set /p nom="Nom : "
      cls
      color 0C
      echo OK %nom%
      timeout /t 2 /nobreak >nul
      :Q1
      cls
      color 0F
      pause
      CLS
      echo Q1.Dans quel genre d'etablissement sont heberges Emma, Norman et Ray ? ?
      echo.
      echo.
      echo 1-Un Internat
      echo 2-Orphelinat
      echo 3-Hotel
      echo.
      set /p Orphelinat="Reponse (chiffre) 1,2 ou 3 : "
      cls
      if %Orphelinat% EQU %rep1% (
      set /a rep_ok=%rep_ok%+1
      ) else (
      set /a rep_ko=%rep_ko%+1
      )
      :Q2
      echo bonjour
      pause=nul
      0
    2. Abdeldevlopper Messages postés 5 Statut Membre 4
       
      ca fonctionne pas a ce moment la
      echo Q1.Dans quel genre d'etablissement sont heberges Emma, Norman et Ray ? ?
      echo.
      echo.
      echo 1-Un Internat
      echo 2-Orphelinat
      echo 3-Hotel
      echo.
      set /p Orphelinat="Reponse (chiffre) 1,2 ou 3 : "
      cls
      if %Orphelinat% EQU %rep1% (
      set /a rep_ok=%rep_ok%+1
      ) else (
      set /a rep_ko=%rep_ko%+1
      )
      :Q2
      echo bonjour
      pause=nul
      0
      1. barnabe0057 Messages postés 14329 Date d'inscription   Statut Contributeur Dernière intervention   4 930 > Abdeldevlopper Messages postés 5 Statut Membre
         
        Pour que ça marche, il suffit de déplacer le GOTO :DEBUT avant le label :REJOUER
        0