Debe estar conectado para participar
Buscar en los foros:


 






Uso de Comodín:
*    coincide cualquier número de caracteres
%    coincide exactamente un caracter

[C] Problema con vectores

No hay Etiquetas
Entrada
Extreme Level

santiago_103

entradas: 1483

00:33 18/11/2008

1

Hola, les comento lo que tengo que hacer:
Tengo que realizar un programa en C en el que ingreso un vector por teclado, lo ordeno con metodo de burbuja, lo imprimo ordenado y desordenado y realizo una busqueda binaria. El programa lo tengo practicamente todo, solo me falta un detalle, para imnprimirlo desordenado necesito copiar todo el vector a un segundo vector en blanco antes de ordenarlo, porque sino me lo va a imprimir ordenado las 2 veces, y ahi esta lo que no se hacer.. Se que es con un for que se igualan los 2 vectores, pero no me sale y no lo soporto mas. Les dejo mi codigo para ver si alguno lo puede abrir y decirme bien como hacer, porque la verdad ya no se me ocurre nada, y, en teoria se como hacerlo, osea, tendria que rocorrer el vector con un for, y que me lo copie posicion a posicion al segundo vector (vector1[i]=vector2[i]), pero no me funca y ya no se como probar, y la verdad que si bien me son utiles los consejos no lo puedo hacer andar, entonces necesitariaque algun alma piadosa lo baje y me dig aexplicitamente "hace tal cosa y te anda" si son tan amables
LINK CODIGO

Si me dicen como hacerlo estaria agradeciso, es solo ese detalle, me tira 3 errores, igualemnte en el codigo deje como comentario arriba de todo que linea tira el error, si no me equivoco es la 40 y la 84…

Saludos y gracias de antemano

Entry Level

nah

entradas: 61

01:36 18/11/2008

2

- el vector como lo definiste en tu codigo simpre es de tamaño 10, ¿esto debe ser asi siempre?

- en la función copiar_vector estas copiando el "vectorb" en el "vector" por lo que estas pisando en vector con nada (basura) y el vectorb contiene nada.

High End Level

J e f f

Capital Federal

entradas: 816

01:40 18/11/2008

3

ahi te mande pm!!! fijate y analizalo!!! como dijo nah…los vectores estaban al revez!! pero tambien faltan un par de cositas mas!!! saludos

 

- Asus M2N-SLI Deluxe – AMD Athlon X2 4200+ Windsor @ 2.65Ghz – 2x 1Gb SuperTalent @ 880mhz cl 5-5-5-15 – XFX 8600GT XXX 256mb PCIe -

- Seagate 250Gb SATA2 – Samsung 500Gb SATA2 – Sound Blaster X-FI Extreme Audio – Edifier C2 – Sennheiser HD202 – Microsoft Natural Ergonomic 4000 -

- A4Tech X-750BF 2500DPI – MousePad Area 51 – Samsung 226 NW – PowerCooler PS-500SS – Thermaltake Soprano – Windows XP Colossus Edition 2 Reloaded -

Extreme Level

santiago_103

entradas: 1483

19:57 18/11/2008

4
Cita Iniciado por nah
Ver Mensaje
- el vector como lo definiste en tu codigo simpre es de tamaño 10, ¿esto debe ser asi siempre?

- en la función copiar_vector estas copiando el "vectorb" en el "vector" por lo que estas pisando en vector con nada (basura) y el vectorb contiene nada.

sisi el vector siempre es de 10

y ya corregi lo de la funcion, ahora lo puse bien y funca, pero mi "ambision" jajaja me quiso llevar a mas, que sea que cuanto uno imprime el codigo, lo muestra primero desordenado, depsues en forma ascendente y despues ordenado en forma descendente y permite elejir una busqueda entre el vector ordenado ascendente y el desendente mediante un switch… es un programa muy ******, pero no me salio el 3er vector, esoty viendo como corregirlo.

Cita Iniciado por J e f f
Ver Mensaje
ahi te mande pm!!! fijate y analizalo!!! como dijo nah…los vectores estaban al revez!! pero tambien faltan un par de cositas mas!!! saludos

Gracias Jeff, elprograma lo pude corregir gracais al pm que me mandaste. Ahora, no se de que cositas mas esta hablando, es eso de definir los vectores con un typedef para crear una variable vec de 10 posiciones??

Edit:
Como ya dije, no me imprime el vector ordenado en forma descendente, por un error muuuy pelotud-o, a llamar a la funcion la llame como nombre_funcion(vector), caundo la tendria uqe haber llamado como nombre_funcion(vector3), entonces me estaba imprimiendo el vector desordenado porque estaba mal llamada la funcion xD