Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: howaboutno en 18 Diciembre 2012, 13:55 pm



Título: ayuda en c vectores
Publicado por: howaboutno en 18 Diciembre 2012, 13:55 pm
hola!
tengo un vector y un dato introducido por teclado. Lo que tiene que hacer es a partir del dato introducido contar cuantas veces aparece ese numero en el vector y su doble.

estaba pensando en esto pero no cuenta...
sugerencias? gracias!
Código:
#define dim 10;
int v[dim]
int t;
int c;
printf("\nintroduce un valor:\n");
fflush(stdout);
scanf("%d",&valor);
for(t=0;t<dim;t++)
{
if(v[t]==valor)
{
c++;
}
}


Título: Re: ayuda en c vectores
Publicado por: dato000 en 18 Diciembre 2012, 15:32 pm
valor no esta definido, no tienes el main, y el define no termina en ";", y te falto terminar la declaración del arreglo "v"  con ;

Código
  1. #define dim 10
  2.  
  3. int main(){
  4.             int v[dim];
  5.  
  6.             int valor, t, c;
  7. printf("\nintroduce un valor:\n");
  8. fflush(stdout);
  9. scanf("%d",&valor);
  10. for(t=0;t<dim;t++)
  11. {
  12. if(v[t]==valor)
  13. {
  14. c++;
  15. }
  16. }          
  17. }  
  18.  


Título: Re: ayuda en c vectores
Publicado por: rir3760 en 18 Diciembre 2012, 15:37 pm
estaba pensando en esto pero no cuenta...
sugerencias?
Antes de realizar el bucle debes asignar los valores a los elementos del array. En el bucle debes verificar si el elemento v[ t ] es igual a valor o valor por dos.

Y cuando tengas una duda lo mejor es publicar código compilable, en buen cristiano el programa completo.

Un saludo


Título: Re: ayuda en c vectores
Publicado por: howaboutno en 18 Diciembre 2012, 15:50 pm
valor no esta definido, no tienes el main, y el define no termina en ";", y te falto terminar la declaración del arreglo "v"  con ;

Código
  1. #define dim 10
  2.  
  3. int main(){
  4.             int v[dim];
  5.  
  6.             int valor, t, c;
  7. printf("\nintroduce un valor:\n");
  8. fflush(stdout);
  9. scanf("%d",&valor);
  10. for(t=0;t<dim;t++)
  11. {
  12. if(v[t]==valor)
  13. {
  14. c++;
  15. }
  16. }          
  17. }  
  18.  

a ver, lo cogí de una función que tenia creada, y estaba bien escrito y compilado....


Título: Re: ayuda en c vectores
Publicado por: howaboutno en 18 Diciembre 2012, 15:50 pm
Antes de realizar el bucle debes asignar los valores a los elementos del array. En el bucle debes verificar si el elemento v[ t ] es igual a valor o valor por dos.

Y cuando tengas una duda lo mejor es publicar código compilable, en buen cristiano el programa completo.

Un saludo
es un vector con numeros al azar ya generado


Título: Re: ayuda en c vectores
Publicado por: twins en 18 Diciembre 2012, 16:43 pm
bien asi quedo no se si es lo que necesitas, y otra cosa si estas aprendiendo c te recomiendo que partas con una buena base, porque hacer un programa sin declarar la funcion main() es un descuido muy grande saludos.
Código
  1. #include<stdio.h>// no tenias declarada esta libreria
  2. #define dim 10 //esto no lleva ;
  3. int main(void){//no tenias la funcion main()
  4. int v[dim]={1,2,2,2,5,4,4,8,9,10};// fataba ; y ademas el vector no tenia elementos
  5. int t,c=0,valor,k=0;
  6. printf("introduce un valor:\n");
  7. scanf("%d",&valor); // valor no estaba declarado
  8. for(t=0;t<dim;t++){
  9. if(v[t]==valor)
  10. c++;
  11. if(v[t]==valor*2)
  12. k++;
  13. }
  14. printf("el valor aparece %i ves(es)\n",c);
  15. printf("el valor por dos aparece %i ves(es)\n",k);
  16. return(0);
  17. }
  18.  


Título: Re: ayuda en c vectores
Publicado por: howaboutno en 18 Diciembre 2012, 18:44 pm
.


Título: Re: ayuda en c vectores
Publicado por: twins en 18 Diciembre 2012, 18:55 pm
aaaaa ok perfecto asi queda claro todo deviste poner esto desde un principio ajaja


Título: Re: ayuda en c vectores
Publicado por: howaboutno en 18 Diciembre 2012, 18:58 pm
oh! ya está, el problema estaba en que se me habia pasado inicializar a 0 el contador. funciona bien ;)
gracias de todos modos  ;D