PROGRAMME PASCAL

BONJOUR
J'AI UNE PARTIE D'UN PROGRAMME ET J'AIMERAIS QU'ON M'AIDE A LA COMPLETER. C'EST UN EXERCICE QU'ON MA DONNE.LES PARTIES MANQUANTES DU PRGRAMME SONT REMPLACES PAR LES TROIS ASTERISTES ET C'EST CE QU'IL FAUT TROUVER.
VOILA L'ENONCE:
LES FRERES DE JOSEPH AU NOMBRE DE 8 POUR CHOISIR LUN ET LAUTRE A LE VISITER SONT ASSIS AUTOUR DUNE TABLE NUMEROTEE DE 1 A 8. A PARTIR DU 1ER, ON COMPTE JUSQU'AU 4EME ET IL QUITTE LA TABLE PUIS ON CONTINUE DE COMPTER A PARTIR DU SUIVANT JUSQU'A CE QUE TOUS SOIENT CHOISIS. ON DEMANDE D'AFFICHER PAR LISTE DE 3 PERSONNES LES NUMEROS D'ORDRE DE SELECTION DES 8 FRERES.
VOICI LE PROGRAMME:

PROGRAM JOSEPH;CONST N=8; S=1;
VAR P:ARRAY[1..N] OF INTEGER;
I,J,K,M,S1,W:INTEGER;
BEGIN
M:=4; S1=S;
FOR I:= 1 TO N DO ***
FOR I:=N DOWNTO 2 DO
BEGIN
S1:= ***;
IF S1=0 THEN ***
W:=P[S1];
FOR J:=S1 TO *** DO
P[J]:=P[J+1];
P[I]:=W;
END;
WRITELN('LES FRERES DE JOSEPH LE VISITERONS DANS L''ORDRE:');
FOR I:= N DONWTO 1 DO
BEGIN
WRITE(P[I]:4);
IF *** MOD 3 =0 THEN
WRITELN;
END
END.

7 réponses

  1. :-( c'est qui samuel?
    "sam" c'est pour "Sami"
    mais de rien (je suppose que tu lire pas cette remarque) :(
    0
    1. merci samuel pour ton aide.bye.
      0
      1. voila, j'espere que c'est ça:
        PROGRAM JOSEPH;
        CONST
          N=8;
          S=1;
        VAR
          P:ARRAY[1..N] OF INTEGER;
          I,J,K,M,S1,W:INTEGER;
        BEGIN
          M:=4; S1:=S;
          FOR I:= 1 TO N DO P[I]:=I;
          FOR I:=N DOWNTO 2 DO
          BEGIN
            S1:= I-2;
            IF S1=0 THEN  S1:=I;
            W:=P[S1];
            FOR J:=S1 TO I-1 DO
              P[J]:=P[J+1];
            P[I]:=W;
          END;
        
          WRITELN('LES FRERES DE JOSEPH LE VISITERONS DANS L''ORDRE:');
          FOR I:=N DOWNTO 1 DO
          BEGIN
            WRITE(P[I]:4);
            IF (I MOD 3) =0 THEN
              WRITELN;
          END
        END.
        

        si t'as d'autres questions n'hesite pas
        (moi je rentre à la maison maintenant, donc à demain)
        1
        1. d'accord merci beaucoup, sam.j'attends ton aide
          0
          1. tu vois, là on as des erreurs dans ce que j'ai mis!
            je corrige:
            PROGRAM JOSEPH;
            CONST
              N=8;
              S=1;
            VAR
              P:ARRAY[1..N] OF INTEGER;
              I,J,K,M,S1,W:INTEGER;
            BEGIN
              M:=4; S1=S;
              FOR I:= 1 TO N DO P[I]=I;
              FOR I:=N DOWNTO 2 DO
              BEGIN
                S1:= ***;
                IF S1=0 THEN ***
                W:=P[S1];
                FOR J:=S1 TO N DO
                  P[J]:=P[J+1];
                P[I]:=W;
              END;
            
              WRITELN('LES FRERES DE JOSEPH LE VISITERONS DANS L''ORDRE:');
              FOR I:= N DONWTO 1 DO
              BEGIN
                WRITE(P[I]:4);
                IF (I MOD 3) =0 THEN
                WRITELN;
              END
            END.
            

            je sais il me reste 2 lignes, je reflechis encore
            S1:= ***;
            IF S1=0 THEN ***
            0
            1. au fait la suite dit que:
              1)stocker les numeros 1 à n des freres dans une table p
              2)si le 1eme quitte la table, à la place p[i] s'assoie l'element de i+1 et les suivants décalent d'une place.
              3)la 2eme étape se repete jusqu'à ce qu'il ne reste plus qu'un seul frere.
              merci
              0
              1. s'il te plait, s'il te plait, s'il te plait, ecrit en miniscules!
                PROGRAM JOSEPH;
                CONST N=8; S=1;
                VAR P:ARRAY[1..N] OF INTEGER;
                I,J,K,M,S1,W:INTEGER;
                BEGIN
                  M:=4; S1=S;
                  FOR I:= 1 TO N DO
                     readln(P[I]);
                  FOR I:=N DOWNTO 2 DO
                  BEGIN
                    S1:= I;
                    IF S1=0 THEN ***
                    W:=P[S1];
                    FOR J:=S1 TO N DO
                      P[J]:=P[J+1];
                    P[I]:=W;
                  END;
                
                  WRITELN('LES FRERES DE JOSEPH LE VISITERONS DANS L''ORDRE:');
                  FOR I:= N DONWTO 1 DO
                  BEGIN
                    WRITE(P[I]:4);
                    IF (I MOD 3) =0 THEN
                    WRITELN;
                  END
                END.
                


                c'est juste des suppositions
                si tu as un enoncé complet alors il faudrais nous le donner!!
                0