Hola pues este es mi tercer
programa con for
y no entiendo a que se refiere este problema,
he buscado en google
pero mi inglés es muy deficiente.
He aqui mi programa:
#include <iostream.h>
#include <conio.h>
main()
{int may,men,a[15],ly,lm,i;
may=men=0;
for (i=0; i<16; i++)
{cout<<"\nElemento a = ";
cin>>a[i];
}
for (i=0; i<16; i++)
{ if (a[i]>may)
{may=a;
ly='i';}
if(a[i]<men)
{men=a;
lm='i';}
}
cout<<"El mayor es "<<may<<" se encuentra en elemento "<<ly;
cout<<"El menor es "<<men<<" se encuentra en elemento "<<lm;
getch();
}
De 15 valores enteros debo averiguar cual es el mayor, el manor y la posicion de ambos.
Los 15 valores enteros, ¿Debes ingresarlos tu mismo aleatoriamente o lo hace el mismo programa automáticamente, seleccionando números al azar?
El ingles es muy importante para aprender un lenguaje de programación como C o C++, aunque no te guste mucho deberías aprenderlo. El error esta en las lineas:
for (i=0; i<16; i++)
{ if (a[i]>may)
{may=a; // <==
ly='i';}
if(a[i]<men)
{men=a; // <==
lm='i';}
}
Y se debe a la falta del operador "[]" y el indice del elemento (debería ser "a[ i ]").
En ese mismo fragmento utilizas 'i' (que es un carácter) cuando deberías utilizar i.
Y cuando declaras un array indicas el numero de elementos:
int may,men,a[15],ly,lm,i;
Y accedes a ellos mediante los indices 0 .. N-1 donde N es el numero de elementos en el array. En otras palabras para un array de 15 elementos sus indices validos van de 0 hasta 14.
Por ultimo te recomiendo que leas 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)
Un saludo
Gracias! :D
te falta int main()