Ayuda con programa

Iniciado por Cas980, 15 Marzo 2014, 06:03 AM

0 Miembros y 1 Visitante están viendo este tema.

amchacon

Me he dado cuenta que no hace falta la funcion strlen, simplemente basta con cambiar la condición funcion coincidencia:

Código (cpp) [Seleccionar]
char coincidencia(const char letra,const char* diccionario)
{
   int i = 0;
   for (;diccionario[i];i++)
   {
       if (letra == diccionario[i]) return 1;
   }
   return 0;
}


Un parametro menos ^^
Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar

Yoel Alejandro

En ese caso es más sucinto:
Código (cpp) [Seleccionar]

char coincidencia(const char letra,const char* diccionario)
{
  int i = 0;
  while ( diccionario[i] )
  {
      if (letra == diccionario[i++]) return 1;
  }
  return 0;
}
Saludos, Yoel.
P.D..-   Para mayores dudas, puedes enviarme un mensaje personal (M.P.)

amchacon

Incluso más todavía:
Código (cpp) [Seleccionar]
char coincidencia(const char letra,char* diccionario)
{
    while (*diccionario)
        if (letra == *diccionario) return 1;
        else diccionario++;
    return 0;
}


^^
Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar

leosansan

Cita de: amchacon en 16 Marzo 2014, 02:08 AM
Incluso más todavía:
Código (cpp) [Seleccionar]
char coincidencia(const char letra,char* diccionario)
{
    while (*diccionario)
        if (letra == *diccionario) return 1;
        else diccionario++;
    return 0;
}


^^

Creo que dejaste atrás const:

Código (cpp) [Seleccionar]
char coincidencia(const char letra,const char* diccionario)

¡¡¡¡ Saluditos! ..... !!!!




amchacon

Cita de: leosansan en 16 Marzo 2014, 13:20 PM
Creo que dejaste atrás const:
Me lo dejé aposta, si le pongo el const no puedo aumentar el puntero ;)
Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar

rir3760

Cita de: amchacon en 16 Marzo 2014, 13:25 PMMe lo dejé aposta, si le pongo el const no puedo aumentar el puntero
Se puede calificar con const el tipo del segundo parámetro:
char coincidencia(const char letra, const char *diccionario) ...

/* O bien */
char coincidencia(const char letra, char const *diccionario) ...

Ya que ello afecta al objeto apuntado.

Supongo estabas pensando en "char * const diccionario" donde el calificador si es un problema.

Un saludo
C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language

amchacon

Cierto, muy buena observación ^^
Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar