Programación General > Pascal

 Comparar Elementos De Un Vector

(1/2) > >>

rak40:
:hola: heme aqui (de nuevo) con mi ganas de aprender, estoy trabajando en algo :alien:  medio raro, pero quiero comparar distintos elementos que se cargan a mi array (son numeros que vienen de una matriz general) de una dimesion decir cual es el mayor e informar su pocision, los libros dicen que hay que atomisar el vector en sus componentes y compararlas asi de cada una por separado, probe aplicando high sobre el array para mostrar un maximo pero me tiro un error.
hay una manera mas facil y practica??

-DriverOp-:

--- Cita de: "rak40" --- :hola: heme aqui (de nuevo) con mi ganas de aprender, estoy trabajando en algo :alien:  medio raro, pero quiero comparar distintos elementos que se cargan a mi array (son numeros que vienen de una matriz general) de una dimesion decir cual es el mayor e informar su pocision, los libros dicen que hay que atomisar el vector en sus componentes y compararlas asi de cada una por separado, probe aplicando high sobre el array para mostrar un maximo pero me tiro un error.
hay una manera mas facil y practica??
--- Fin de la cita ---
Pregunta: ¿ambos vectores tienen la misma cantidad de elementos?

rak40:
osea es un solo vector, que quiero comparar los elementos que le cargue adentro
estoy usando turbo pascal 7

Mollense:
En definitiva lo único que necesitas hacer es obtener el valor máximo y su posición? De lo contrario, no entendí.
De ser así es muy fácil. En una variable, max por ejemplo, guardas el valor del primer elemento del array, y en otra, ej pos la posición del máximo actual, luego recorrés el array desde el principio y consultas, si el elemento actual es mayor a max entonces max es el nuevo máximo y pos es la posición actual. Al final tendrás el máximo y su posición en max y pos.

Es eso?

-DriverOp-:

--- Cita de: "rak40" --- osea es un solo vector, que quiero comparar los elementos que le cargue adentro
estoy usando turbo pascal 7
--- Fin de la cita ---
O sea esto?:

--- Código: Text --- max:=0;posmax:=0;for i:=1 to largovector dobegin if (vector[i] > max) then   begin      max:=vector[i];      posmax:=i;   end; { if }end; { for }   :unsure:

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa