| |||
crear 1 vector dinamico Buenas por favor alguien m puede decir como crear 1 vector dinamico en lenguance C++, y ordenarlo sin aplicar ningun metodo de ordenamiento, tambien quiero eliminar 1 elemento y codificar el contenido de una posicion y mostrar el vector al final |
| |||
Respuesta: crear 1 vector dinamico Hola Velizz, por lo que leo la mejor solucion es usar STL vector. Aca te dejo el codigo de creacion, iteracion, orden, eliminacion de un elemento en un vector. Te recomiendo que chusmees las funciones stl Vector que con practica sirven muchisimo. #include <cstdlib> #include <iostream> #include <vector> using namespace std; int main(int argc, char *argv[]) { //declaro e inicializo vector<int> v; for(int i=10; i>0; i--) v.push_back(i); //itero y muestro (sin orden) vector<int>::iterator it; for(it=v.begin(); it!=v.end(); it++) cout<<*it<<" "; cout<<endl; //ordeno sort(v.begin(),v.end()); //elimino la posicion 2 del vector ordenado v.erase(v.begin()+2); //muestro de nuevo (con orden y eliminado un elemento) for(it=v.begin(); it!=v.end(); it++) cout<<*it<<" "; cout<<endl; system("PAUSE"); return EXIT_SUCCESS; } Acá encontras todo explicado de 10 http://www.cplusplus.com/reference/stl/vector/ Saludos!! Pablo.- |
| |||
Respuesta: crear 1 vector dinamico Gracias yo lo tengo asi lo unico q m falta es eliminar 1 elemento del vector y poder modificar 1 posicion. #include <stdio.h> #include <conio.h> void main (){ int i,v[100],n,aux,j; printf("Tamaño del vector:"); scanf("%d",&n); printf("\n"); printf("llene el vector:\n"); for(i=0;i<n;i++){ printf("posicion [%d]:",i+1); scanf("%d",& v[i]); } printf("\n"); printf("el vector es:\n"); for(i=0;i<n;i++){ printf(" %d",v[i]); } for(i=0;i<n;i++){ aux=v[i]; j=i-1; while((v[j]>aux)&&(j>=0)){ v[j+1]=v[j]; j--; v[j+1]=aux; } } printf("\n"); printf("el vector ordenado es:\n"); for(i=0;i<n;i++){ printf(" %d",v[i]); } getche(); } |
| |||
Respuesta: crear 1 vector dinamico Mira, me base en tu codigo y la modificacion es tan simple como esto: int pos, value; printf("\n"); printf("ingrese posicion a modificar:"); scanf("%d",&pos); printf("\n"); printf("ingrese valor a modificar:"); scanf("%d",&value); v[pos]=value; y antes de tirarte un ejemplo de eliminacion, necesito saber si lo que queres es que la posicion quede vacia o que el vector se resaizee. Insisto, si usas stl esto lo resolves en un pedo y mucho mas prolijo. |
| |||
Respuesta: crear 1 vector dinamico lo q quiero es eliminar 1 elemento, y modificar 1 posicion y q quede vacia para despues ser utilizada. Ej : v= [ 2,4,6,7] --> eliminar 6 v=[2,4,7] ---> modificar 4 v=[2,7,7,8] y decir en que posicion se repite el mismo numero EJ: El 7 sta en la posicion 2 y 3 Cita:
Iniciado por elbambinodemerlo Mira, me base en tu codigo y la modificacion es tan simple como esto: int pos, value; printf("\n"); printf("ingrese posicion a modificar:"); scanf("%d",&pos); printf("\n"); printf("ingrese valor a modificar:"); scanf("%d",&value); v[pos]=value; y antes de tirarte un ejemplo de eliminacion, necesito saber si lo que queres es que la posicion quede vacia o que el vector se resaizee. Insisto, si usas stl esto lo resolves en un pedo y mucho mas prolijo. |
| |||
Respuesta: crear 1 vector dinamico si lo que quieres es dejar el vacio en la posicion del array (vector / arreglo es lo mismo) ubicate en el mismo y ponle el caracter ' ' pero si lo q quieres es que se elimine con todo y posicion usa esto: int numero_elementos; numero_elementos =ftell/sizeof(Tuestructura); usa un for q vaia desde el numero q ingresaste hasta el numero_elementos y sube cada uno de los registros y al final haz q el contador del vector disminuya en 1 y listo |