SoloCodigo
Programación General => C/C++ => Mensaje iniciado por: Nova05 en Viernes 11 de Marzo de 2011, 03:45
-
ke tal !! ando trabajando en este codigo con funciones...es para retornar un arreglo usando la recursividad en la funcion pero ke en esta no lleve el ciclo for como me he encontrado en varios foros... les agradeceria k me comentaran en dond esta mi error...XD
este es el codigo:
#include<stdio.h>
#include<conio.h>
int vector(int arreglo[], int num,int pos);
void main() {
int arreglo[30];
int num;
int val;
int pos=0;
printf("Ingresa tamaño del arreglo:");
scanf("%d",&num);
printf("nIngresa valores: ");
for(int c=0;c<num;c++)
{
scanf("%d",&val);
arreglo[c]=val; }
printf("nn El arreglo queda asi: [ %d ", vector(arreglo,num,pos));
getch();
}
int vector(int arreglo[], int num,int pos){
while(pos<num){
arreglo[pos];
pos=pos+1;
}
return arreglo[pos];
}
-
¿Qué pasa si cuando pides el tamaño del arreglo te introducen 40? No compruebas los límites.
Y ahí yo no veo nada recursivo...
-
oo see lo see...pero los limites es lo ke menos m interesa en este caso...pero si lo tengo en cuenta... lo d recursivo tiene ke ver el la parte de mandar llamar la funcion para ke imprima mi arreglo...actualmente solo necesito ke imprima de menos todas las posiciones de un array [3], x ejemplo..
-
y si notan...lo unico k hace mi funcion es retornar la primera posicion...ya k no hace el aumento en la misma...iwal y es x la condicion..pero si se puede hacer con recursividad seria mucho mejor..
-
haber función recursiva es una función q se llama a si misma y casi siempre la unica sentencia de validación es el if() pensalo a si, si tu posición sea menor a la cantidad de elementos q lo muestre y llamas a la misma función con los mismos parametros pero con la pos+1 entendes??