Saludos denuevo.. Ahora les cuento cómo se escribe en pascal el mecanismo que nos va a dejar ingresar datos dentro de un vector o matriz…
Pero antes, un poco de lo obvio
Diferencias entre un vector y una matriz:
Bueno, la principal diferencia es que el vector es asi como una sola linea de ‘n’ datos, comparado con el vector que son ‘m’ lineas de ‘n’ datos, la idea es imaginarse el vector como una de esas cajitas de huevos que tienen una sola linea, donde en cada espacio va un huevo…
 |
En cambio las matrices son así como un vector metido dentro de otro vector, me explico: Es como si cada espacio de una de las cajas de huevos, tuviera otra línea de cajas de huevo metdia dentro…Pero para usos prácticos, tomemos en cuenta que el vector tiene una sola coordenada que identifica la posición, y una matriz tiene 2 o más…En el caso del vector, dentro del programa Pascal, vamos a llamar a la posición ‘i’ del vector como vec_nombre[i], y para asociarle un valor a cada una de las posiciones del vector, se necesita un ciclo FOR, que vaya desde la primera posición, hasta la n-ésima, ¿y qué queremos que haga en ese ciclo?La lectura de datos.. que se escribe así: |
FOR i:=1 to n do (*hay que recordar que n es una constante, que delimita la longitud del vector*)
begin
readln (vec_nombre[i]);
end;
Ahora, en el caso de una Matriz… es un poco más complicado, porque para el caso de que sea una matriz de dos dimensiones, va a tener dos letras que van a identificar la posición de un numero dentro de esa matriz…
o sea, que una posición en la matriz se va a escribir vec_nombre[i,j]
donde ‘i’ me da la posición de la fila, y ‘j’ me da la posición de la columna donde se encuentra ese numero…
¿En qué afecta ésto para ingresar datos?
en que vamos a tener que usar un ciclo FOR dentro de otro, para que, para cada ‘i’ (fila), se ingrese un dato en cada [i,j]… entonces se estaría haciendo una operacion igual que la del vector, pero ésta se repetiría para cada fila… esto se escribe de la siguiente manera:
FOR i:=1 to n do (*hay que recordar que n es una constante, que delimita la cantidad de filas de la matriz*)
begin
FOR j:=1 to m do (*hay que recordar que m es una constante, que delimita la cantidad de filas de la matriz*)
begin
readln (vec_nombre[i]);
end;
end;
Eso por el momento… más adelante posteo el procedimiento de escritura, que es muy parecido… al final siempre en matrices se usan dos ciclos, y para vectores uno solo… si tienen preguntas háganlas, para ir mejorando el material…
Rafa