Compter le nombre de lettres à la suite

Résolu/Fermé
Utilisateur anonyme - 18 déc. 2012 à 10:44
 Utilisateur anonyme - 18 déc. 2012 à 13:18
Bonjour à toutes et à tous,

J'ai fait un tableau où l'on rentre une suite de A de C de G et de T
du genre
TCATGCTGGAGAAGTTCTGCAACTCTACGTTTTGGAACTCTTCATTCTTGGATAGCCCAGAAGCGGACCT
je voudrais compter le plus grand nombre de A consécutif .

Pouvez vous m'aider?
merci et bonne journée



3 réponses

j'ai trouvé merci de votre aide

chaine = chaine.match(/A+/g).sort().pop().length; 
   document.write("Il a une chaine consecutive de " + chaine + " A");


A++
1
Stanislas Poisson Messages postés 424 Date d'inscription samedi 1 décembre 2012 Statut Membre Dernière intervention 22 mai 2018 66
18 déc. 2012 à 11:37
je te dirais, de faire un replace() des autres caractères puis un length() afin de connaitre le nombre de caractères restant.

Si c'est la meme chose pour chaque, créer et entregistre temporairement la chaine dans une nouvelle vvariable que tu réinitialise pour chaque caracteres a compter.
0
Utilisateur anonyme
18 déc. 2012 à 11:44
Oui ok mais moi ce qui m'intéresse et c'est où je bloque ( ce st pour un exercice de cour)
Si j'ai AAACCGTTTAAAAACCTG
je veux que c a me dise AAAA soit 4 A
le plus grand nombre consécutif de caractère!
voici mon code
<!DOCTYPE html>
<html>
	<head>
		<title>Exercice1</title>
		<meta charset="UTF-8" />
	</head>
	<body>
		<script type="text/javascript">
			var chaine = new Array;
			var nbr_A = 0, nbr_C = 0, nbr_T = 0, nbr_G = 0;
			var pourc_A, pourc_C, pourc_T, pourc_G;
			chaine = prompt("entrer une chaine de nucléotides");

			for(var i = 0; i < chaine.length; i++) {
				if(chaine[i] == "A") {
					nbr_A++;
				}
				if(chaine[i] == "C") {
					nbr_C++;
				}
				if(chaine[i] == "T") {
					nbr_T++
				}
				if(chaine[i] == "G") {
					nbr_G++
				}
			}
			pourc_A = 100 * (nbr_A / chaine.length);
			pourc_C = 100 * (nbr_C / chaine.length);
			pourc_T = 100 * (nbr_T / chaine.length);
			pourc_G = 100 * (nbr_G / chaine.length);

			document.write("La chaine contient " + chaine.length + " nucléotides", "<br>");
			document.write("La chaine contient " + nbr_A + " nucléotides A", "<br>");
			document.write("La chaine contient " + nbr_C + " nucléotides C", "<br>");
			document.write("La chaine contient " + nbr_T + " nucléotides T", "<br>");
			document.write("La chaine contient " + nbr_G + " nucléotides G", "<br>");
			document.write("La chaine contient " + pourc_A.toFixed(2) + "% de nucléotides A", "<br>");
			document.write("La chaine contient " + pourc_C.toFixed(2) + "% de nucléotides C", "<br>");
			document.write("La chaine contient " + pourc_T.toFixed(2) + "% de nucléotides T", "<br>");
			document.write("La chaine contient " + pourc_G.toFixed(2) + "% de nucléotides G", "<br>");
			
			if(pourc_A > pourc_C && pourc_A > pourc_G && pourc_A > pourc_T) {
				document.write("il y a plus de nucléotides de type A");
			} else if(pourc_C > pourc_A && pourc_C > pourc_G && pourc_C > pourc_T) {
				document.write("il y a plus de nucléotides de type C");
			} else if(pourc_G > pourc_C && pourc_G > pourc_A && pourc_G > pourc_T) {
				document.write("il y a plus de nucléotides de type G");
			} else {
				document.write("il y a plus de nucléotides de type T");
			}

		</script>
	</body>
</html>
0
Utilisateur anonyme
18 déc. 2012 à 11:45
il me manque que cette question? merci de m'aider
0