Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: muymuyperdido en 2 Diciembre 2012, 20:51 pm



Título: Programa en C con función - problema con el contador
Publicado por: muymuyperdido en 2 Diciembre 2012, 20:51 pm
El programa consiste en escribir una secuencia de bases de ADN ( A G T o C) y pedir una base, y mediante una funcion el programa te dice cuantas veces aparece esa base, mi problema es que el contador se queda en cero.

Código
  1. #include <stdio.h>
  2. #define TAM 200
  3. int contador(char v[]);
  4. void main(){
  5. char v[TAM],base;
  6. printf("Escribe secuencia");
  7. gets(v);
  8. printf("Escribe base");
  9. scanf("%c",&base);
  10. printf("El numero de veces que aparece es %d",contador(v));
  11.  
  12. }
  13. int contador (char v[])
  14. {
  15.    int contador=0,i;
  16.  
  17.    for(i=0; v[i]!='\0'; i++)    {
  18.        if(v[i]=='base')        {
  19.            contador++;
  20.        }
  21.    }
  22.    return contador;
  23. }


Gracias :)


Título: Re: Programa en C con función - problema con el contador
Publicado por: durasno en 2 Diciembre 2012, 21:44 pm
Citar
if(v=='base')
trata de pensar q quisiste hacer aca y por que lo pusiste entre comillas simples



SAludos


PD: el codigo asi no compila


Título: Re: Programa en C con función - problema con el contador
Publicado por: muymuyperdido en 3 Diciembre 2012, 13:19 pm
PD: el codigo asi no compila
Si me compila, si le quito las comillas simples y declaro la base me compila pero me sigue dando el contador cero, no se en que fallo.


Título: Re: Programa en C con función - problema con el contador
Publicado por: leosansan en 3 Diciembre 2012, 13:52 pm
me compila pero me sigue dando el contador cero, no se en que fallo.
A mí no me da cero:
Código
  1. #include <stdio.h>
  2. #define TAM 200
  3. int contador (char v[],char b);
  4. int main(){
  5. char v[TAM],base;
  6. printf("Escribe secuencia: ");
  7. gets(v);
  8. printf("Escribe base: ");
  9. scanf("%c",&base);
  10. printf("El numero de veces que aparece es %d",contador(v,base));
  11. }
  12. int contador (char v[],char b)
  13. {
  14.    int contador=0,i;
  15.    for(i=0; v[i]!='\0'; i++)
  16.        if(v[i]==b)
  17.            contador++;
  18.    return contador;
  19. }
Saluditos!.



Título: Re: Programa en C con función - problema con el contador
Publicado por: muymuyperdido en 3 Diciembre 2012, 16:30 pm
Habia olvidado hacer que la funcion recibiese el caracter ._.
Gracias, en serio, me estaba volviendo loco! :||


Título: Re: Programa en C con función - problema con el contador
Publicado por: leosansan en 3 Diciembre 2012, 16:43 pm
Citar
Soy de la opinión que con un código hay que pelear un tiempo prudencial. Y si crees tenerlo pero no furula lo mejor es postearlo, ya que suele deberse a un detalle tonto al que le echas horas y no lo ves, en cambio gente "fresca de ideas" lo pueden pillar al vuelo.
Saluditos!.