Affichage Matrice

Résolu
lexiiia -  
 inconnu -
Comment afficher une matrice de cette manière en pascal (j'utilise TPW 1,5)
1 2 30 4
4 2 7 9
5 1 0 0
quand j'ecris write(k[j,i],'|');
l'affichage est comme ça
1|2|30|4|.....

1 réponse

  1. KX Messages postés 19031 Statut Modérateur 3 020
     
    Il faut que tu fasses un saut de ligne à chaque fois que tu changes la valeur de j.
    Remarque : plus joli que '|' tu pourrais utiliser une tabulation chr(9)
    La confiance n'exclut pas le contrôle
    0
    1. lexiiia
       
      peux tu me donner le syntaxe ??
      0
    2. KX Messages postés 19031 Statut Modérateur 3 020
       
      comme tu as fait plus haut, write(k[j,i],chr(9));
      et pour le saut de ligne tu as writeln;
      0
    3. lexiiia
       
      voici le boucle
      begin
      for i:=1 to y do {lignes}
      begin
      for j:=1 to x do {colonnes}
      begin
      write(k[j,i],chr(9));
      writeln;
      end;
      end; mais le programme affiche
      1
      2
      4
      4
      7
      5
      8
      0
    4. KX Messages postés 19031 Statut Modérateur 3 020
       
      Tu dois mettre le writeln à la fin de la ligne, pas après chaque colonne.

      for i:=1 to y do // lignes
      begin
          for j:=1 to x do // colonnes
              write(k[j,i],chr(9));
          
          // fin de la ligne
          writeln;
      end;

      Remarque ; on a plutôt tendance à marquer en premier les i et ensuite les j : k[i,j] et non k[j,i].
      Du moment que tu restes cohérent dans tous le programme ça ira, mais c'est une bonne habitude à prendre que de respecter les conventions (c'est plus facile à comprendre pour un prof par exemple)
      0
    5. lexiiia
       
      Merciiiiiiiiiiiiiii ^^
      0