Ecrire un programme

nardiagne Messages postés 12 Statut Membre -  
qbasic45 Messages postés 60 Statut Membre -
Bonjour,

je voulais qu on m'aide a écrire un programme qui permet de saisir un date ( jour,mois,année ). le programme détermine et affiche la date précédente et la date suivante

iba

2 réponses

  1. yoann090 Messages postés 10597 Statut Contributeur sécurité 1 697
     
    Bonjour,

    En quel langage ?

    Dis nous deja ce que tu sais faire et où tu bloques.

    Cordialement
    0
    1. nardiagne Messages postés 12 Statut Membre
       
      je suis etudiant en licence1 on est entrain d'écrire sur le cahier pas sur la machine
      0
    2. yoann090 Messages postés 10597 Statut Contributeur sécurité 1 697
       
      D'accord. Alors detaillez le plan que vous souhaiteriez faire.
      Declaration des variables
      Etude des conditions (par exemple si le mois a 28, 30 ou 31 jours, si l'annee est bisextile, si on change d'annee,...)
      0
    3. nardiagne Messages postés 12 Statut Membre
       
      merci je voulais s'avoir comment entrer les conditions c'est ca qui me pose probléme
      0
    4. yoann090 Messages postés 10597 Statut Contributeur sécurité 1 697
       
      Ben je ne sais pas, il y a plusieurs methodes tu peux faire des boucles imbriqués.
      0
    5. nardiagne Messages postés 12 Statut Membre
       
      mais vous pouvez me donner un exemple en utilisant si....... fin si
      0
  2. qbasic45 Messages postés 60 Statut Membre 3
     
    bonjour
    calendrier 1900 a 2200 en qbasic
    CLS : COLOR 15
    DIM mj(12), jour$(7), dj$(370), jj$(31)

    mj(1) = 31: mj(3) = 31
    mj(4) = 30: mj(5) = 31: mj(6) = 30
    mj(7) = 31: mj(8) = 31: mj(9) = 30
    mj(10) = 31: mj(11) = 30: mj(12) = 31

    jour$(1) = "LUN": jour$(2) = "MAR"
    jour$(3) = "MER": jour$(4) = "JEU"
    jour$(5) = "VEN": jour$(6) = "SAM"
    jour$(7) = "DIM"

    jj$(1) = " 1": jj$(2) = " 2": jj$(3) = " 3": jj$(4) = " 4"
    jj$(5) = " 5": jj$(6) = " 6": jj$(7) = " 7": jj$(8) = " 8"
    jj$(9) = " 9": jj$(10) = " 10": jj$(11) = " 11": jj$(12) = " 12"
    jj$(13) = " 13": jj$(14) = " 14": jj$(15) = " 15": jj$(16) = " 16"
    jj$(17) = " 17": jj$(18) = " 18": jj$(19) = " 19": jj$(20) = " 20"
    jj$(21) = " 21": jj$(22) = " 22": jj$(23) = " 23": jj$(24) = " 24"
    jj$(25) = " 25": jj$(26) = " 26": jj$(27) = " 27": jj$(28) = " 28"
    jj$(29) = " 29": jj$(30) = " 30": jj$(31) = " 31"
    1 REM
    az = 0
    LOCATE 1, 1: PRINT DATE$
    PRINT
    PRINT "anee de 1900 a 2200"
    PRINT
    PRINT "anne"; : INPUT az
    IF az < 1900 OR az > 2200 THEN 1

    j1f = 0:
    FOR a = 1900 TO az
    IF a = 1900 THEN j1f = j1f + 365: mj(2) = 28: lm = 365: sk = 1: GOTO 1000
    IF a MOD 4 = 0 THEN
    j1f = j1f + 366: mj(2) = 29: lm = 366: sk = 8
    ELSE
    j1f = j1f + 365: mj(2) = 28: : lm = 365: sk = 1
    END IF

    1000 : NEXT a
    a = 0
    hj = lm - sk: sk = 0
    fg = 0: x1 = 0: x2 = j1f - hj: hj = 0
    kl = 0
    FOR kl = 1 TO x2
    x1 = x1 + 1:
    IF x1 > 7 THEN x1 = 1
    NEXT kl
    kl = 0
    'PRINT x1; " "; mj(2); " "; jour$(x1); " "; lm: END
    x4 = x1
    FOR x3 = 1 TO lm
    dj$(x3) = jour$(x4)
    x4 = x4 + 1
    IF x4 > 7 THEN x4 = 1
    NEXT x3
    x3 = 0: x4 = 0
    REM
    2000 REM
    j1f = 1: jk2 = 1
    2010 REM
    t = mj(jk2): CLS
    REM
    LOCATE 2, 2: PRINT CHR$(201); STRING$(34, 205); CHR$(187)
    LOCATE 3, 2: PRINT CHR$(186); STRING$(34, 32); CHR$(186)
    xx$ = "": xx1$ = ""
    xx$ = STRING$(4, 205) + CHR$(203)
    xx1$ = STRING$(4, 205) + CHR$(185)
    LOCATE 4, 2: PRINT CHR$(204); xx$; xx$; xx$; xx$; xx$; xx$; xx1$
    xx$ = "": xx1$ = ""
    xx$ = STRING$(4, 32) + CHR$(186)
    LOCATE 5, 2: PRINT CHR$(186); xx$; xx$; xx$; xx$; xx$; xx$; xx$
    LOCATE 7, 2: PRINT CHR$(186); xx$; xx$; xx$; xx$; xx$; xx$; xx$
    LOCATE 9, 2: PRINT CHR$(186); xx$; xx$; xx$; xx$; xx$; xx$; xx$
    LOCATE 11, 2: PRINT CHR$(186); xx$; xx$; xx$; xx$; xx$; xx$; xx$
    LOCATE 13, 2: PRINT CHR$(186); xx$; xx$; xx$; xx$; xx$; xx$; xx$
    LOCATE 15, 2: PRINT CHR$(186); xx$; xx$; xx$; xx$; xx$; xx$; xx$
    xx$ = "": xx1$ = ""
    xx$ = STRING$(4, 205) + CHR$(206)
    xx1$ = STRING$(4, 205) + CHR$(185)
    LOCATE 6, 2: PRINT CHR$(204); xx$; xx$; xx$; xx$; xx$; xx$; xx1$
    LOCATE 8, 2: PRINT CHR$(204); xx$; xx$; xx$; xx$; xx$; xx$; xx1$
    LOCATE 10, 2: PRINT CHR$(204); xx$; xx$; xx$; xx$; xx$; xx$; xx1$
    LOCATE 12, 2: PRINT CHR$(204); xx$; xx$; xx$; xx$; xx$; xx$; xx1$
    LOCATE 14, 2: PRINT CHR$(204); xx$; xx$; xx$; xx$; xx$; xx$; xx1$
    xx$ = "": xx1$ = ""
    xx$ = STRING$(4, 205) + CHR$(202)
    xx1$ = STRING$(4, 205) + CHR$(188)
    LOCATE 16, 2: PRINT CHR$(200); xx$; xx$; xx$; xx$; xx$; xx$; xx1$
    xx$ = "": xx1$ = ""

    IF jk2 = 1 THEN b$ = "": b$ = "JANVIER"
    IF jk2 = 2 THEN b$ = "": b$ = "FEVRIER"
    IF jk2 = 3 THEN b$ = "": b$ = "MARS"
    IF jk2 = 4 THEN b$ = "": b$ = "AVRIL"
    IF jk2 = 5 THEN b$ = "": b$ = "MAI"
    IF jk2 = 6 THEN b$ = "": b$ = "JUIN"
    IF jk2 = 7 THEN b$ = "": b$ = "JUILLET"
    IF jk2 = 8 THEN b$ = "": b$ = "AOUT"
    IF jk2 = 9 THEN b$ = "": b$ = "SEPTEMBRE"
    IF jk2 = 10 THEN b$ = "": b$ = "OCTOBRE"
    IF jk2 = 11 THEN b$ = "": b$ = "NOVEMBRE"
    IF jk2 = 12 THEN b$ = "": b$ = "DECEMBRE"

    lkm = 0: lkm = LEN(b$)
    lk1 = 0: lk1 = 36 - lkm
    lk2 = 0: lk2 = INT(lk1 / 2)
    LOCATE 3, lk2: PRINT b$; az
    a1 = 0: p = 0

    IF dj$(j1f) = "LUN" THEN GOSUB 3000
    IF dj$(j1f) = "MAR" THEN GOSUB 3010
    IF dj$(j1f) = "MER" THEN GOSUB 3020
    IF dj$(j1f) = "JEU" THEN GOSUB 3030
    IF dj$(j1f) = "VEN" THEN GOSUB 3040
    IF dj$(j1f) = "SAM" THEN GOSUB 3050
    IF dj$(j1f) = "DIM" THEN GOSUB 3060

    FOR a = 1 TO 7
    LOCATE 7, 3 + p: PRINT jj$(a): p = p + 5
    NEXT a
    a = 0: p = 0
    FOR a = 1 TO 7
    LOCATE 9, 3 + p: PRINT jj$(a + 7): p = p + 5
    NEXT a
    a = 0: p = 0
    FOR a = 1 TO 7
    LOCATE 11, 3 + p: PRINT jj$(a + 14): p = p + 5
    NEXT a
    a = 0: p = 0
    FOR a = 1 TO 7
    LOCATE 13, 3 + p: PRINT jj$(a + 21): p = p + 5
    NEXT a
    a = 0: p = 0
    FOR a = 1 TO 7
    IF a + 28 > t THEN 2050
    LOCATE 15, 3 + p: PRINT jj$(a + 28): p = p + 5
    2050 NEXT a
    'END
    a = 0: p = 0
    j1f = j1f + t: jk2 = jk2 + 1
    IF jk2 > 12 THEN END
    LOCATE 35, 1: PRINT "pouez sur une touche"
    INPUT y$
    GOTO 2010
    END
    3000 REM
    xx$ = ""
    xx$ = "LUN " + CHR$(186)
    xx$ = xx$ + "MAR " + CHR$(186)
    xx$ = xx$ + "MER " + CHR$(186)
    xx$ = xx$ + "JEU " + CHR$(186)
    xx$ = xx$ + "VEN " + CHR$(186)
    xx$ = xx$ + "SAM " + CHR$(186)
    xx$ = xx$ + "DIM "
    LOCATE 5, 3: PRINT xx$
    xx$ = ""
    RETURN
    3010 REM
    xx$ = ""
    xx$ = "MAR " + CHR$(186)
    xx$ = xx$ + "MER " + CHR$(186)
    xx$ = xx$ + "JEU " + CHR$(186)
    xx$ = xx$ + "VEN " + CHR$(186)
    xx$ = xx$ + "SAM " + CHR$(186)
    xx$ = xx$ + "DIM " + CHR$(186)
    xx$ = xx$ + "LUN "
    LOCATE 5, 3: PRINT xx$
    xx$ = ""
    RETURN
    3020 REM
    xx$ = ""
    xx$ = "MER " + CHR$(186)
    xx$ = xx$ + "JEU " + CHR$(186)
    xx$ = xx$ + "VEN " + CHR$(186)
    xx$ = xx$ + "SAM " + CHR$(186)
    xx$ = xx$ + "DIM " + CHR$(186)
    xx$ = xx$ + "LUN " + CHR$(186)
    xx$ = xx$ + "MAR "
    LOCATE 5, 3: PRINT xx$
    xx$ = ""
    RETURN
    3030 REM
    xx$ = ""
    xx$ = "JEU " + CHR$(186)
    xx$ = xx$ + "VEN " + CHR$(186)
    xx$ = xx$ + "SAM " + CHR$(186)
    xx$ = xx$ + "DIM " + CHR$(186)
    xx$ = xx$ + "LUN " + CHR$(186)
    xx$ = xx$ + "MAR " + CHR$(186)
    xx$ = xx$ + "MER "
    LOCATE 5, 3: PRINT xx$
    xx$ = ""
    RETURN
    3040 REM
    xx$ = ""
    xx$ = "VEN " + CHR$(186)
    xx$ = xx$ + "SAM " + CHR$(186)
    xx$ = xx$ + "DIM " + CHR$(186)
    xx$ = xx$ + "LUN " + CHR$(186)
    xx$ = xx$ + "MAR " + CHR$(186)
    xx$ = xx$ + "MER " + CHR$(186)
    xx$ = xx$ + "JEU "
    LOCATE 5, 3: PRINT xx$
    xx$ = ""
    RETURN
    3050 REM
    xx$ = ""
    xx$ = "SAM " + CHR$(186)
    xx$ = xx$ + "DIM " + CHR$(186)
    xx$ = xx$ + "LUN " + CHR$(186)
    xx$ = xx$ + "MAR " + CHR$(186)
    xx$ = xx$ + "MER " + CHR$(186)
    xx$ = xx$ + "JEU " + CHR$(186)
    xx$ = xx$ + "VEN "
    LOCATE 5, 3: PRINT xx$
    xx$ = ""
    RETURN
    3060 REM
    xx$ = ""
    xx$ = "DIM " + CHR$(186)
    xx$ = xx$ + "LUN " + CHR$(186)
    xx$ = xx$ + "MAR " + CHR$(186)
    xx$ = xx$ + "MER " + CHR$(186)
    xx$ = xx$ + "JEU " + CHR$(186)
    xx$ = xx$ + "VEN " + CHR$(186)
    xx$ = xx$ + "SAM "
    LOCATE 5, 3: PRINT xx$
    xx$ = ""
    RETURN
    0