[ Foro de C ]

Ayuda con una tarea

07-Dec-2020 18:55
Invitado (Pedro)
0 Respuestas

Me podrían ayudar a adecuar el siguiente código con estas restricciones:
-Usar arreglos.
-No permitir escribir fuera del espacio reservado. Si la longitud de la cadena es de más de 1000 nucleótidos,leer solo 1000 e ignorar el resto.
-La cadena de adn debe imprimirse al final con sólo mayúsculas.
-Reportar error si la cadena de adn leída tiene un carácter no válido.

#include <stdio.h>
#include <locale.h>
#include <string.h>
#include <ctype.h>
#define MAX 1000

char nt[MAX+1];

int main(void)
{
   
int i, lon, A, C, G, T;

setlocale(LC_ALL, "");

puts("Introducir cadena de ADN:");
fgets(nt, MAX+1, stdin);

lon=strlen(nt);

for(i=0; i<lon; ++i)
  nt[i]= toupper(nt[i]);
       
for(i=0; i<lon; ++i){
   switch(nt[i]){
          case'A': A++;
                 break;
                 
          case'C': C++;
                 break;
                 
          case'G': G++;
                 break;
                 
          case'T': T++;
                 break;
                 
   }
}  
 
 printf("%d %d %d %d\n", A,C,G,T);
 printf("\n%s", nt);

 return 0;
}




(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)