Ayuda con pascal

Hola... Mira esta vez necesito ayuda con una carga de archivo que tengo
Type
 Sudocuadro = 0..10;
 TCuadricula = Array [1..9,1..9] of Sudocuadro;
 Unicuadricula = Array [1..9] of Sudocuadro;
.
.
.
Procedure CargaFichero(var cuad : TCuadricula);
 Var
  Fich : text;
        num:Sudocuadro;
  Nombre : String;
  x,y : Sudocuadro;
 Begin
  // Evitar warnings
  Nombre := '';
  Repeat
   Write('Introduzca el nombre del fichero: ');
   readln(Nombre);
  Until ( nombre <> '' );
  {$I-}
  Assign(Fich, Nombre);
  Reset(Fich);
  {$I+}
  If ( IOResult <> 0 ) Then
   writeln('Error abriendo el fichero.')
  Else
  Begin
                       x:=1;
                    y:=1;
                   while not eoln(fich) do
                    begin
                      readln(Fich,num);
                      cuad[x,y] :=num;
                      y:=y+1;
                      end;
  End;
  writeln('Proceso de lectura a terminado.');
  readln;  
  Close(Fich);
 End; 
Lo de los arreglos es para que sepas... El problema esta que la carga bien pero lo imprime es forma de columnas y no filas
osea... Este es mi archivo
0 0 9 0 0 7 0 6 0
0 0 6 2 8 4 0 0 0
5 0 2 0 6 0 3 7 8
0 0 0 4 0 0 0 0 5
0 0 5 3 2 8 0 0 0
0 0 8 7 0 0 6 0 0
0 8 7 0 4 2 0 3 0
0 5 0 0 0 0 2 0 6
3 0 0 0 5 0 7 0 0
En vez de imprimirmelo así como aparece... Me lo imprime al revez... Osea las filas me las esta transformando en columna
Este trabajo es de un sudoku... Para que más o menos tengas una idea de lo que te estoy preguntando
¿Entonces cómo puedo hacer para que me los imprima tal y como aparece en el archivo?
Gracias de antemano y agradecería tu respuesta

1 Respuesta

Respuesta
1
Creo que te has saturado ;)
Si tienes las filas cambiadas por las columnas, pues donde pone "x", pon "y" ;)
Tienes que tomar 1 criterio fijo. Puedes decir que la primera "coordenada" del arreglo de la tabla sea la fila o sea la columna.
Si te lo pone "cambiado", o lo has puesto al revés al leer o lo has puesto al revés al escribir ;)
Pero vamos: la solución es tan simple como a la hora de leer o de mostrar en pantalla, cambiar la POR por la Y y yatá =D

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas