[ Foro de C ]
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.)