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.
#include <stdio.h>
#define TAM 200
int contador(char v[]);
void main(){
char v[TAM],base;
printf("Escribe secuencia");
gets(v);
printf("Escribe base");
scanf("%c",&base);
printf("El numero de veces que aparece es %d",contador(v));
}
int contador (char v[])
{
int contador=0,i;
for(i=0; v[i]!='\0'; i++) {
if(v[i]=='base') {
contador++;
}
}
return contador;
}
Gracias :)
Citarif(v=='base')
trata de pensar q quisiste hacer aca y por que lo pusiste entre comillas simples
SAludos
PD: el codigo asi no compila
Cita de: durasno en 2 Diciembre 2012, 21:44 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.
Cita de: muymuyperdido en 3 Diciembre 2012, 13:19 PM
me compila pero me sigue dando el contador cero, no se en que fallo.
A mí no me da cero:#include <stdio.h>
#define TAM 200
int contador (char v[],char b);
int main(){
char v[TAM],base;
printf("Escribe secuencia: ");
gets(v);
printf("Escribe base: ");
scanf("%c",&base);
printf("El numero de veces que aparece es %d",contador(v,base));
}
int contador (char v[],char b)
{
int contador=0,i;
for(i=0; v[i]!='\0'; i++)
if(v[i]==b)
contador++;
return contador;
}
Saluditos!.
Habia olvidado hacer que la funcion recibiese el caracter ._.
Gracias, en serio, me estaba volviendo loco! :||
CitarSoy 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!.