practico 0 ejercicio 5

practico 0 ejercicio 5

de Joaquin Vidal Fiorella -
Número de respuestas: 5

hola, al realizar este ejercicio me surgieron un par de dudas que no se resolver.

1) para probar el programa despues de creado el procedimiento que lo ordena quise crear un cuerpo principal, pero no se como pasarle los arreglos al procedimiento para que los devuelva ordenados.

2) tampoco se como cargar el arreglo desde la entrada ya que no se el largo, para esto pense en preguntar primero el largo y definir el arreglo como : int arreglo[largo], pero crear un arreglo de largo una variable me da problemas.


En respuesta a Joaquin Vidal Fiorella

Re: practico 0 ejercicio 5

de Federico Trotta -
1) Para pasarle elementos al procedimiento que creaste se hace así: bubbleSort (arre01).
Suponiendo que tu procedimiento se llama bubbleSort y el arreglo que le queres pasar se llama arre01.

2) Para cargar el arreglo, yo lo que hice fue poner un for que itera 5 veces y me pide 5 números por la entrada estandar. Y ahi los fuí guardando en mi arreglo "arre01" uno por uno. Luego se los pasé a mi procedimiento bubbleSort.
Y sobre la variable te da problemas porque para crear el arreglo al momento de compilar precisas tener la variable bien definida asi se le da el espacio en memoria correspondiente.
En respuesta a Federico Trotta

Re: practico 0 ejercicio 5

de Joaquin Vidal Fiorella -
Hola, gracias por la respuesta.
1)Al pasarlo de esa forma se pasan por referencia o eso tengo que aclararlo en el encabezado del arreglo como en Pascal?
Te pregunto porque yo mi arreglo no lo hice como un puntero, supongo que si es un puntero no es necesario el pasaje por referencia, cierto?
2) ahí estás suponiendo que el largo del arreglo va a ser 5, no puede ser distinto?
En respuesta a Joaquin Vidal Fiorella

Re: practico 0 ejercicio 5

de Federico Trotta -
1) Por defecto se pasan por referencia y se modifican en el procedimiento al que tu pasas el arreglo. Un arreglo es en realidad un puntero que referencia a la dirección de memoria del primer elemento ( o el elemento que pases a tu procedimiento) del arreglo. Por eso es que si modificas en tu procedimiento un arreglo, se te modifica en todo el programa.
2) Con suponer que van a ser 5 elementos estoy reduciendo al minimo lo complementario al problema principal, que es hacer un procedimiento que me ordene un arreglo. Y de esa manera me enfoco con facilidad a mi problema sabiendo que el arreglo está bien hecho.
Se podría implementar como vos decís pero tendrías que trabajar con memoria dinámica. Y las tareas de laboratorio que nos van a poner se va a tratar precisamente de eso, asi que ya vamos a tener ejercicios de sobra con eso que querés hacer