SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: hygiliak en Martes 20 de Julio de 2004, 04:11

Título: Genes Y Cadenas De Caracteres
Publicado por: hygiliak en Martes 20 de Julio de 2004, 04:11
Que tal, a ver si me pueden hechar la mano, respecot al problema que tengo que resolver, y tengo algo hecho, pero me falta saber como copiar, los resultados a otras dos cadenas, el problema es lo siguiente:

Genes Dominantes y Recesivos
Suponga que el patrón genético de cada individuo está codificado como una cadena de letras mayúsculas y minúsculas. Por ejemplo, el patrón genético de una madre podría estar codificado como la cadena JosEFIna y el de un padre como la cadena fiLOMeNo. Cada letra mayúscula representa un gen dominante y cada letra minúscula representa un gen recesivo. Cuando combinamos los patrones genéticos de la madre y del padre para obtener los de sus descendientes (una niña y un niño) ocurre lo siguiente:

El primer gen de la madre se combina con el primer gen del padre para obtener el primer gen de los descendientes y así sucesivamente con el segundo gen, el tercer gen, etc.
Si, al combinarse dos genes, uno es dominante y el otro es recesivo, entonces los dos descendientes adquieren el gen dominante.
En caso contrario, la niña adquiere el gen de la madre y el niño adquiere el gen del padre.
En nuestro ejemplo, el patrón genético de la niña y el niño son JoLEFINa y JiLOMINo respectivamente. (Evidentemente, esto no tiene casi ninguna relación con lo que realmente ocurre.)

Especificación
La entrada consiste de dos cadenas madre y padre (cada una en una línea y en ese orden) cuyas longitudes están entre 1 y 1000. La salida consiste de dos cadenas hija e hijo (cada una en una línea y en ese orden). Cada una de las cadenas corresponde con el código genético de uno de los individuos y todas tendrán la misma longitud.

Ejemplos

ENTRADA:   SALIDA:        ENTRADA:   SALIDA:
JosEFIna   JoLEFINa       TEre       TEAe
fiLOMeNo   JiLOMINo       JuAn       JEAn


#include <stdio.h>
int compara (char s[1000], char t[1000]) /*funcion que compara dos cadenas  */
{

 int i;

 for ( i=0;  s==t && s != '\0'; i++)

 return s-t;
}

int longitud (char s[]) /* calacula la longitud de una cadena*/
{
 int i=0;
   while ( s != '\0')
   i++;
 return i;
}

/* Pregunta si es MAYUSCULA:
   if (('A' <= c) && (c <= 'Z'))     */
/* Pregutna si es minuscula:
   if (('a' <= c) && (c <= 'z'))     */

int main(void)
{
 char madre [1000];
 char padre [1000];
 char hija  [1000];
 char hijo  [1000];
 char comparacion [1000];
 int longmama, longpapa, contma, contpa, c;
 gets (madre);
 gets (padre);


 longmama = longitud (madre);
 longpapa = longitud (padre);
     printf("%d\t %d\n", longmama, longpapa);     /* prueba*/

 compara(madre, padre);

  if (madre != padre)

     if  (("madre">=65) && ("madre"<=90))    /*se supone que pregunta si es
                                              MAYUSCULA EN ASCII */
      if (("madre">=97) && ("madre"<=122)) /*minuscula en ASCII*/

      if  (("padre">=65) && ("padre"<=90))
      if (("padre">=97) && ("padre"<=122))




      return 0;
}
Título: Re: Genes Y Cadenas De Caracteres
Publicado por: Noel Solw en Martes 20 de Julio de 2004, 09:52
Adjunto algunas correcciones a tu programa de cadenas geneticas.