Tableau d 'entier séquence [Résolu]

Strick9 40 Messages postés mardi 8 novembre 2005Date d'inscription 9 mai 2007 Dernière intervention - 25 mai 2006 à 12:22 - Dernière réponse : scaryman 492 Messages postés vendredi 30 janvier 2004Date d'inscription 16 mai 2007 Dernière intervention
- 25 mai 2006 à 14:51
Bonjour à tous

voila je suis débutant et j'aimerai bien connaître la solution de cet énoncé.


Soit un tableau d'entier. Une séquence paire est une suite d'entiers
pairs. Une séquence impaire est une suite d'entiers impairs. Une
séquence alternée est une suite d'entiers où il n y a pas deux entiers
consécutifs ayant la même parité.

Ecrire une méthode permettant de déterminer la taille (nombre d'entier) de la séquence alterné la plus longue dans le tableau.

Exemple: la méthode doit rendre la valeur 6 pour un tableau contenant les valeurs suivantes:


                            2   2   3   5   4   8   4   1   6   9   4   1   3   6   4


Merci pour avoir pris le temps de lire et si vous connaissez la réponse, n'hésitez pas :) .

Bonne journée à toute et à tous.
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
scaryman 492 Messages postés vendredi 30 janvier 2004Date d'inscription 16 mai 2007 Dernière intervention - 25 mai 2006 à 14:51
3
Merci
Je crois que ceci marche (p-e moyen de faire plus simple):
int suite(int[] tab) {
        int nbre = 0;
        int prov = 0;
        boolean pair;
        if(tab[0] % 2 == 0)
            pair = true;
        else
            pair = false;
        prov++;
        for(int i = 1; i < tab.length; i++) {
            if(tab[i] % 2 == 0) {
                if(!pair) {
                    prov++;
                    if(i == tab.length - 1) {
                        if(prov > nbre)
                            nbre = prov;
                    }
                }
                else {
                    if(prov > nbre)
                        nbre = prov;
                    prov = 1;
                }
                pair = true;
            }
            else {
                if(pair) {
                    prov++;
                    if(i == tab.length - 1) {
                        if(prov > nbre)
                            nbre = prov;
                    }
                }
                else {
                    if(prov > nbre)
                        nbre = prov;
                    prov = 1;
                }
                pair = false;
            }
        }
        return nbre;
   }

A++

Merci scaryman 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 95 internautes ce mois-ci

Commenter la réponse de scaryman
scaryman 492 Messages postés vendredi 30 janvier 2004Date d'inscription 16 mai 2007 Dernière intervention - 25 mai 2006 à 13:02
0
Merci
Salut
Tu veux qu'on fasse tes énoncés de cours? On est ici pour donner de l'aide quand quelqu'un est bloqué dans son code mais par pour faire des codes entiers. http://www.javafr.com/reglement.aspx

A++
Commenter la réponse de scaryman
Strick9 40 Messages postés mardi 8 novembre 2005Date d'inscription 9 mai 2007 Dernière intervention - 25 mai 2006 à 13:07
0
Merci
désolé, je croyais que c'était interdit pour les truc compliqué genre projet
mais si j ai demandé sa ne veux pas dire que je n est pas essayé. voila mon code peut être que tu peux le corriger alors :)

public static int sequence(int t[], int x)
    {
        int i = 0;
        int j = i + 1;        int cpt 0; int l 0;
       
        while (i < x)
        {
           
            if (t[i] % 2 != 0)
            {
                while (t[i] % 2 != 0 && t[j] % 2 == 0)
                {
                    i++; l++;
                    if (t[i]%2!=0&&t[j]%2!=0)
                    {
                        if (cpt<l) cpt=l;
                    l = 0;
                    }

                   
                }
            }
            else while (t[i] % 2 == 0 && t[j] % 2 != 0)
                {
                    i++; l++;
                    if (cpt < l) cpt = l;
                }
        } return cpt;
    }
Commenter la réponse de Strick9
sheorogath 2465 Messages postés samedi 21 février 2004Date d'inscription 29 janvier 2010 Dernière intervention - 25 mai 2006 à 13:34
0
Merci
en effet il vaux mieu mettre aussi le code avec qui pose probleme ca nous montre que ta essaye
je ne suis pas assez fort en maths pour te corriger mais bone chance

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
Commenter la réponse de sheorogath

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.