Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Error con Matrices, punteros y random

Estas en el tema de Error con Matrices, punteros y random en el foro de C/C++ en Foros del Web. Hola que tal? bueno pues miren tengo un pequeñisimo problema.... jaja xD como veran este necesito ayuda verdad? es que no soy muy ameno a ...
  #1 (permalink)  
Antiguo 26/04/2009, 20:57
 
Fecha de Ingreso: marzo-2009
Mensajes: 22
Antigüedad: 15 años, 1 mes
Puntos: 0
Error con Matrices, punteros y random

Hola que tal? bueno pues miren tengo un pequeñisimo problema....
jaja xD como veran este necesito ayuda verdad? es que no soy muy ameno a C
y estoy teniendo una secuencia de problemas con matrices
lo que quiero hacer es poder generar usar matrices con numeros aleatorios y que los imprima
las cadenas ya estan definidas antes pero no sé puede dice que
fallo de segmentación y no sé que hacer gracias por su ayuda el código
es:


Código:
void dietas(char variable[])
{
	int stime;
	long ltime;
	/*obtener la hora local del sistema*/
	ltime = time(NULL);
	stime = (unsigned) ltime/2;
	srand(stime);
	for (contador=rand()%5;contador<3;contador+rand()%5)
	{
		printf("%s", variable[contador]);
		printf("\n");
	}
}

Última edición por omarin1; 30/04/2009 a las 11:43 Razón: no pude meter el codigo, dice que es spam!
  #2 (permalink)  
Antiguo 27/04/2009, 04:28
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Respuesta: Error con Matrices, punteros y random

El problema es que tal como lo definis dietas recibe UNA cadena de alguno de los arrays (con suerte contador sera 0 al principio pero es un valor indefinido) bjo, nrl u obs. Tenes que pasar la direccion del array.

Código:
void dietas(char *variable[])
dietas(bjo);

Código:
for (contador=rand()%5;contador<3;contador+rand()%5)
Ojo con el bucle, la ultima expresion no hace nada, si lo que queres sumarle a contador rand() % 5 tenes que hacer:

Código:
for (contador=rand()%5;contador<3;contador+=rand()%5)
Tambien si definis un array de X tamaño sus dimensiones van de 0 a X - 1, es decir que no existe bjo[5] por ejemplo.


Hay varias cosas mal y puede que me haya saltado algunas, trata de depurarlo con mucha atencion.
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #3 (permalink)  
Antiguo 27/04/2009, 12:50
 
Fecha de Ingreso: marzo-2009
Mensajes: 22
Antigüedad: 15 años, 1 mes
Puntos: 0
Respuesta: Error con Matrices, punteros y random

Hola gracias por responder, estuve checando...
y por lo visto con arreglos no puedo manejar cadenas de texto verdad?
oye entonces te pido ayuda...
como puedo hacer por ejemplo para poder crear un número aleatorio y
por ejemplo caiga 2 y llame a una cadena de texto que diga Usted necesita hacer esto y esto.
yo creí que se manejaba igual en C como en PHP
y pues estuve tratando igual
por eso maneje cadenas así de:
Código:
bjo[5];
para que tuviera según yo... 6 cadenas dentro pero así no se puede XD
y gracias por sacarme de la duda...
pero como puedo hacer eso? :S
gracias de antemano
  #4 (permalink)  
Antiguo 27/04/2009, 13:00
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Respuesta: Error con Matrices, punteros y random

Mejor lee mi mensaje anterior ...
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
  #5 (permalink)  
Antiguo 30/04/2009, 14:21
 
Fecha de Ingreso: marzo-2009
Mensajes: 22
Antigüedad: 15 años, 1 mes
Puntos: 0
Exclamación Respuesta: Error con Matrices, punteros y random

Ok, creo que estuve usando mal todo xD jaja
reescribi por completo el codigo y ya lei acerca de punteros y matrices
ayudo mucho gracias
  #6 (permalink)  
Antiguo 30/04/2009, 14:35
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Respuesta: Error con Matrices, punteros y random

De nadas
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:10.