Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: Onigiri en 25 Octubre 2012, 03:13 am



Título: Ayuda con Ejercicio de vector! ;_;
Publicado por: Onigiri en 25 Octubre 2012, 03:13 am
Hola! (:
Pues debo hacer un ejercicio
en donde ingreso por teclado 20 elementos
de un vector numerico,
y luego mostrarlos en el orden inverso al
ingresado.

Es bastante sencillo, la resolucion pero no puedo pasarlo a C++ D:
no se en que me estoy equivocando u.u

Código
  1. #include <conio.h>
  2. #include <iostream.h>
  3. main()
  4. {int a[20],i;
  5. for(i=0; i<20; i++)
  6. {cout<<"\nElemento a = ";
  7.  cin>>a[i];
  8. }
  9.  
  10. for(i=20; i<1; i--)
  11. {cout<<"\n\nElemento a "<<i<<" = "<<a[i];}
  12. getch();
  13. }


Título: Re: Ayuda con Ejercicio de vector! ;_;
Publicado por: rir3760 en 25 Octubre 2012, 03:21 am
Lo primero que hay que cambiar son los nombres de los encabezados, la definición de la funcion "main" y evitar el uso de la biblioteca conio de Borland. Por favor lee el tema |Lo que no hay que hacer en C/C++. Nivel basico| (http://foro.elhacker.net/programacion_cc/lo_que_no_hay_que_hacer_en_cc_nivel_basico-t277729.0.html).

También deberías conseguir un libro o curso de calidad, puedes utilizar el motor de búsqueda para recomendaciones.

El problema es el bucle:
Código
  1. for(i=20; i<1; i--)
  2. {cout<<"\n\nElemento a "<<i<<" = "<<a[i];}
Debería ser:
Código
  1. for (i = 19; i >= 0; i--)
  2.   cout << "a[" << i << "] = " << a[i] << endl;

Un saludo


Título: Re: Ayuda con Ejercicio de vector! ;_;
Publicado por: naderST en 25 Octubre 2012, 03:22 am
La condición del segundo for dice que se va a ejecutar mientras i sea menor que uno y el primer valor de i es veinte, es decir que nunca va a entrar al for. Además si entra al for te darás cuenta que i=20 se sale del arreglo ya que los arreglos en C/C++ van desde 0 a n-1 donde n es el tamaño del arreglo (n=20).

Advertencia - mientras estabas escribiendo, una nueva respuesta fue publicada. Probablemente desees revisar tu mensaje.


Título: Re: Ayuda con Ejercicio de vector! ;_;
Publicado por: flony en 25 Octubre 2012, 03:27 am
Código:
#include <iostream>
using namespace std;
 int main()
{
int a[19],i;
    for(i=0; i<=19; i++)
    {cout<<"\nElemento a = ";
    cin>>a[i];
    }
 
for(i=19; i>=0; i--)
{cout<<"\n\nElemento a "<<i<<" = "<<a[i];}
system ("PAUSE");
return 0;
}
bueno errores los que te dijeron en los dos for habia errores de interpretacion, no usas using namespace std;
no uses conio
y no uses <iostream.h>
es sin el punto y la h
y es int main()


Título: Re: Ayuda con Ejercicio de vector! ;_;
Publicado por: Onigiri en 25 Octubre 2012, 03:44 am
Ya me estuve leyendo el articulo,
y les agradezco mucho.
Si bien aun estoy aprendiendo
no creo que pueda dejar de usar el conio.h
y using namespace std asi como asi;
verán, el la facultad me dicen que "asi es como debe ser".
Y yo (al menos por ahora ya que ya empezaré con parciales)
quiero comprender mis errores tontos, y luego empezar a modificar mi
estructura en la escritura.

Yo utilizo el borland c++ 5.02 para programar
y utilize el codigo anterior pero me salia errores que yo aún no entiendo D:

Pero estudiaré >.< 


Título: Re: Ayuda con Ejercicio de vector! ;_;
Publicado por: naderST en 25 Octubre 2012, 03:57 am
Está muy mal que les enseñen C++ y no empiecen por C. Con respecto a la librería NO ESTÁNDAR conio, no deberían ni mirarla, ya que como te dije no es estándar y hace que C/C++ pierda una de sus características principales que es la portabilidad.


Título: Re: Ayuda con Ejercicio de vector! ;_;
Publicado por: 0xDani en 25 Octubre 2012, 15:35 pm
Está muy mal que les enseñen C++ y no empiecen por C. Con respecto a la librería NO ESTÁNDAR conio, no deberían ni mirarla, ya que como te dije no es estándar y hace que C/C++ pierda una de sus características principales que es la portabilidad.

Estoy de acuerdo con lo de conio, para hacer esas cosas no hace falta mas que la libreria estandar y si acaso algo de preprocesador, pero en cuanto a que haya que aprender C antes que C++ no. Probablemente es mas facil aprender con C primero, pero de ahi a que "este muy mal"...


Título: Re: Ayuda con Ejercicio de vector! ;_;
Publicado por: naderST en 25 Octubre 2012, 17:39 pm
Bueno cada quien tiene sus opiniones yo lo digo porque me parece mal que esté programando 100% estructurado y lo haga en C++ ya que no está explotado C++ estos programitas sencillos se pueden hacer fácilmente en C. A nivel de eficiencia no es lo mismo hacer un cout que un printf.