Programa en Pascal: valores de vectores, ordenación, matriz transpuesta e impresión de datos

Que tal me gustaría si podes orientarme con respecto a un programa que me pidieron que hiciera para presentar.
El enunciado es el siguiente:
Leer m vectores de m elementos. Se pide:
1)Que vectores poseen más valores impores.
2)Ordenar los vectores en forma ascendente.
3)Calcular la transpuesta de la matriz equivalente.
4)Imprimir los datos y resultados con sus formas matriciales o vectoriales.

1 Respuesta

Respuesta
1
Bien, creo que lo primero que debes hacer es definir un subprograma (función o procedimiento) para cada ejercicio.
Debes determinar si ese valor m lo conoces en tiempo de diseño o ejecución, pues así podrás determinar si utilizas arreglos dinámicos o estáticos.
En el caso que conozcas el valor m o al menos lo supongas debes pasar a escoger el algoritmo de ordenamiento que utilizarás pues dependiendo de la cantidad de elementos a organizar será el rendimiento de los distintos algoritmos que existen.
Es una buena variante definir un arreglo bidimensional para almacenar los vectores y así ya estos queden en forma de matriz.
Ejemplo
matriz = array [1..m,1..m]of integer
Suponiendo que defines un procedimiento que capta los datos a través del usuario dices:
1)
Defines un arreglo que puede ser dinámico para ir poniendo las posiciones de los índices que más elementos impares tienen. Define una función que dado un vector devuelva cuantos # impares tienen y luego haz un ciclo para todos los vectores. Empieza ubicando el vector 1 como el que más elementos tiene y cuando estés recorriendo los demás si tienen la misma cantidad lo adicionas al arreglo, si tiene más, inicias nuevamente el arreglo poniendo solamente esta posición. Al final en el arreglo quedarán las posiciones de los vectores que más elementos impares tienen.
2)De aquí no hay mucho que comentar, escoge un algoritmo tradicional teniendo en cuenta todo lo que te dije antes, define una función y caso cerrado.
3)Para esto define una función(si tu objetivo es calcularla) o procedimiento(si tu objetivo es mostrarla) y lo único que debes hacer es recorrer la matriz por las columnas y en caso que necesites almacenar la traspuesta, se lo asignas a una variable que se vaya moviendo en el ciclo igualmente, pero pof filas.
4)Bueno esto es elemental, no creo que necesite comentario

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas