Connaître votre jour de naissance sous msdos

Résolu/Fermé
karirovax Messages postés 3221 Date d'inscription dimanche 17 janvier 2010 Statut Membre Dernière intervention 22 juin 2016 - Modifié par karirovax le 15/07/2010 à 19:55
karirovax Messages postés 3221 Date d'inscription dimanche 17 janvier 2010 Statut Membre Dernière intervention 22 juin 2016 - 13 juil. 2010 à 00:32
Bonjour, tous le monde

j'ai écrit un batch qui permet d'identifier votre jour de naissance ;) , voici le code :

<gras@echo off
setlocal enableDelayedExpansion
mode con cols=80 lines=100
echo.
ECHO ???????????????????????????????????????????»
ECHO ? ?
echo ? CE programme permet de trouver ?
ECHO ? ?
ECHO ? votre jour de naissance ?
ECHO ? ?
ECHO ???????????????????????????????????????????¼
echo.
echo ------------------------------------------------------------------
echo janvier fevrier mars avril mai juin juillet ao-t sept oct nov dec
echo ------------------------------------------------------------------
echo 0 3 3 6 1 4 6 2 5 0 3 5
echo ------------------------------------------------------------------
echo.
echo ----------------------------
echo dim lun mar mer jeu ven sam
echo ----------------------------
echo 0 1 2 3 4 5 6
echo ----------------------------
echo.
:jours
echo.
echo Tappez votre jour de naissance :
echo.
set /p "jr=> "
if %jr% GTR 31 (echo Vous devez choisir un nombre inferieur ou 'gale a 31&&goto jours)
if %jr% LEQ 0 (echo Vous devez choisir un nombre superrieur ou 'gale a 1&&goto jours)
goto mois
:mois
echo.
echo Tappez votre mois de naissance :
echo.
set /p "mois=> "
if %mois% GTR 12 (echo Vous devez choisir un nombre inferieur ou 'gale a 12&&goto mois)
if %mois% LEQ 0 (echo Vous devez choisir un nombre superrieur ou 'gale a 1&&goto mois)

echo.
echo Entrez votre ann'e de naissance ( en 4 chiffre Ex: 1990 ) :
echo.
set /p "ane=> "
echo.
set /a v=%ane%-1900
set /a age=%DATE:~6,4%-%ane%
echo.
echo vous avez %age% ans
set /a mod=%v%%%4
echo modulo = %mod%
set /a res=(%v%-%mod%)/4
echo reste = %res%

if %jr%==01 set jr=%jr:~1,1%
if %jr%==02 set jr=%jr:~1,1%
if %jr%==03 set jr=%jr:~1,1%
if %jr%==04 set jr=%jr:~1,1%
if %jr%==05 set jr=%jr:~1,1%
if %jr%==06 set jr=%jr:~1,1%
if %jr%==07 set jr=%jr:~1,1%
if %jr%==08 set jr=%jr:~1,1%
if %jr%==09 set jr=%jr:~1,1%

if %mois%==01 set mois=%mois:~1,1%
if %mois%==1 set n=0
if %mois%==02 set mois=%mois:~1,1%
if %mois%==2 set n=3
if %mois%==03 set mois=%mois:~1,1%
if %mois%==3 set n=3
if %mois%==04 set mois=%mois:~1,1%
if %mois%==4 set n=6
if %mois%==05 set mois=%mois:~1,1%
if %mois%==5 set n=1
if %mois%==06 set mois=%mois:~1,1%
if %mois%==6 set n=4
if %mois%==07 set mois=%mois:~1,1%
if %mois%==7 set n=6
if %mois%==08 set mois=%mois:~1,1%
if %mois%==8 set n=2
if %mois%==09 set mois=%mois:~1,1%
if %mois%==9 set n=5
if %mois%==10 set n=0
if %mois%==11 set n=3
if %mois%==12 set n=5
set /a sum=%v%+%res%+%jr%+%n%
rem -------------------------*ANNEE BISSEXTILE***-------------------------------
set bissex=Non
set /a mod=%ane%%%400
if %mod% equ 0 (
set bissex=Oui
) else (
set/a mod=%ane%%%4
if !mod! equ 0 (
set/a mod=%ane%%%100
if !mod! neq 0 set bissex=Oui
)
)
if "%mod%"=="0" (set /a sum=%sum%-1 &&echo feverier contient 29 jours)
echo somme = %sum%
set /a sem=%sum%%%7
echo semaine = %sem%
echo.
ECHO ???????????????????????????????????????????»
ECHO ? ?
ECHO ? Est ce que l'ann'e est bissextile ? ?
ECHO ? ?
ECHO ? R'ponse : %bissex% ?
ECHO ? ?
ECHO ???????????????????????????????????????????¼
color 1a
if %jr% LSS 10 (
if %mois% LSS 10 (
echo =======================
echo ^| jours ^| %jr% ^|
echo =======================
echo ^| mois ^| %mois% ^|
echo =======================
echo ^| ann'e ^| %ane% ^|
echo =======================
if %sem%==0 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : dimanche %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==1 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Lundi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==2 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Mardi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==3 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Mercredi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==4 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Jeudi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==5 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Vendredi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==6 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Samedi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
ECHO.
)
)
if %jr% GEQ 10 (
if %mois% GEQ 10 (
echo =======================
echo ^| jours ^| %jr% ^|
echo =======================
echo ^| mois ^| %mois% ^|
echo =======================
echo ^| ann'e ^| %ane% ^|
echo =======================
if %sem%==0 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : dimanche %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==1 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Lundi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==2 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Mardi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==3 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Mercredi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==4 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Jeudi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==5 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Vendredi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==6 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Samedi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
ECHO.
)
)
if %jr% LSS 10 (
if %mois% GEQ 10 (
echo =======================
echo ^| jours ^| %jr% ^|
echo =======================
echo ^| mois ^| %mois% ^|
echo =======================
echo ^| ann'e ^| %ane% ^|
echo =======================
if %sem%==0 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : dimanche %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==1 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Lundi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==2 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Mardi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==3 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Mercredi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==4 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Jeudi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==5 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Vendredi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==6 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Samedi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
ECHO.
)
)
if %jr% GEQ 10 (
if %mois% LSS 10 (
echo =======================
echo ^| jours ^| %jr% ^|
echo =======================
echo ^| mois ^| %mois% ^|
echo =======================
echo ^| ann'e ^| %ane% ^|
echo =======================
if %sem%==0 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : dimanche %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==1 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Lundi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==2 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Mardi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==3 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Mercredi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==4 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Jeudi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==5 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Vendredi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
if %sem%==6 (ECHO ???????????????????????????????????????????»&&echo ? vous ^tes n'e le : Samedi %jr%/%mois%/%ane% ?&&ECHO ???????????????????????????????????????????¼)
ECHO.
)
)
ECHO ???????????????????????????????????????????»
ECHO ? ?
ECHO ? Vous avez aim' ce jeu ? ?
ECHO ? ?
ECHO ? karirovax ;) ?
ECHO ? ?
ECHO ???????????????????????????????????????????¼
ECHO.
ECHO.
pause</gras>

j'ai réglé le problème, je pense que maintenant ca va trés bien marché ;) merci pour les remarques (ze-life-of-quent1)
karirovax ;)
A voir également:

1 réponse

ze-life-of-quent1 Messages postés 1573 Date d'inscription lundi 8 février 2010 Statut Membre Dernière intervention 17 octobre 2015 776
13 juil. 2010 à 00:25
Pas mal. Par contre il ne prends pas les nombres commençant par 0. De plus, un "pause" à la fin aurait été apprécié.

Sinon bon boulot ;)
0
karirovax Messages postés 3221 Date d'inscription dimanche 17 janvier 2010 Statut Membre Dernière intervention 22 juin 2016 203
13 juil. 2010 à 00:28
Re,
merci pour votre remarque , mais dans quel ligne que vous dites les nombres commençant par zéro pour que je puisse la régler ;)
0
karirovax Messages postés 3221 Date d'inscription dimanche 17 janvier 2010 Statut Membre Dernière intervention 22 juin 2016 203
13 juil. 2010 à 00:32
autre remarque ? SVP
0