IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

Trouver le le plus petit multiple de 6 d'un tableau


Sujet :

avec Java

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2020
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2020
    Messages : 39
    Points : 13
    Points
    13
    Par défaut Trouver le le plus petit multiple de 6 d'un tableau
    Bonjour à tous,
    comme dit dans le titre, j'aimerais savoir comment on fait pour trouver le plus petit multiple de 6 d'un tableau, par exemple pour le tableau suivant : {1,2,6,24,18,30}; la fonction devra retourner 6. Je pensais y arriver facilement mais en faites il s'avère que c'est plus compliquer que cela...
    voici le code que j'ai fait jusque là :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    int [] b = {1,2,6,24,18,30};
    			int [] m = new int [b.length];
    			int p = b[0];
     
     
     
    for(int i = 0;i<b.length;i++) {
    					if(b[i]%6 == 0) {
    						b[i] = m[i];
    					if(p > m[i]) {
    						p = m[i];
    						System.out.print(p);
    					}
    				}
    				}
     
    	}

  2. #2
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2014
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2014
    Messages : 352
    Points : 349
    Points
    349
    Par défaut
    Bonjour,

    Tu peux essayer ce bout de code.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    public int getMultipleOfSix(int[] tab) {  
     
        Arrays.sort(tab);
        for(int i : tab) {
            if(i % 6 == 0) return i;
        }
     
        return 0 // ou ce que tu veux comme valeur si pas de multiple de 6 dans le tableau;
    }

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2020
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2020
    Messages : 39
    Points : 13
    Points
    13
    Par défaut
    Salut merci de la réponse, alors oui ça fonctionne mais ils attendent quelque chose de plus scolaire, donc la fonction Arrays j'ai pas le droit de l'utiliser...

  4. #4
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2014
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2014
    Messages : 352
    Points : 349
    Points
    349
    Par défaut
    Dans ce cas faut que tu tries ton tableau avec ton propre algo :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    	public int getMultipleOfSix(int[] tab) { 
     
    	    for(int i = 0; i < tab.length; i++) {
    		  if (i > 0) {
    			if (tab[i] < tab[i - 1]) {
    				int a = tab[i - 1];
    				tab[i - 1] = tab[i];
    				tab[i] = a;
    			}
    		  }
    	    }
     
    	    for(int i : tab) {
    	        if(i % 6 == 0) return i;
    	    }
     
    	    return 0; // ou ce que tu veux comme valeur si pas de multiple de 6 dans le tableau;
    	}
    Tu peux aussi mettre en place la dichotomie si t'as un gros tableau à trier !

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2020
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2020
    Messages : 39
    Points : 13
    Points
    13
    Par défaut
    Ah oui effectivement ce n'est pas bête ! Mais les algorithmes de trie j'avoue qu'on n'a pas encore vu donc c'est difficile à appréhender.

  6. #6
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2014
    Messages
    352
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Octobre 2014
    Messages : 352
    Points : 349
    Points
    349
    Par défaut
    Citation Envoyé par antares56 Voir le message
    Ah oui effectivement ce n'est pas bête ! Mais les algorithmes de trie j'avoue qu'on n'a pas encore vu donc c'est difficile à appréhender.
    Mais le tri que j'ai fourni ici n'est pas du tout fiable car ça ne trie pas correctement(peut-être que ça marche pour ton exemple mais c'est sûr que ça ne marchera pas si tu t'amuses à changer l'ordre des éléments du tableau). C'est juste pour que tu aies une idée de comment résoudre ton problème.

  7. #7
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Non mais il y a pas besoin de trier, hein... Il faut trouver le plus petit. Il suffit de se rappeler à tout moment quel est le plus petit, et de regarder tous les éléments.

    Trier c'est du gâchis de travail.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  8. #8
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2020
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2020
    Messages : 39
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Non mais il y a pas besoin de trier, hein... Il faut trouver le plus petit. Il suffit de se rappeler à tout moment quel est le plus petit, et de regarder tous les éléments.

    Trier c'est du gâchis de travail.
    Je fais ça dans mon code, mais ça me renvoi pas le plus petit nombre...

  9. #9
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    J'en doute. Pour commencer tu crées un autre tableau que celui qui t'est donné. J'ai pourtant jamais parlé de faire ça.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  10. #10
    Membre averti
    Homme Profil pro
    Architecte technique
    Inscrit en
    Mai 2020
    Messages
    326
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Mai 2020
    Messages : 326
    Points : 439
    Points
    439
    Par défaut
    Citation Envoyé par thelvin Voir le message
    Il suffit de se rappeler à tout moment quel est le plus petit
    @thelvin à raison, et même pas besoin de copier le tableau.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
        Integer min = null;
        for (int i=0; i<numbers.length; i++) {
           if ( numbers[i]%6!=0 )
              continue;
           if ( min == null || numbers[i] < min ) 
              min = numbers[i];
        }
        // min est le plus petit OU null si aucun multiple de 6

    Par contre trier n'est pas toujours du gaspillage.

  11. #11
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    Citation Envoyé par gervais.b Voir le message
    Par contre trier n'est pas toujours du gaspillage.
    Pas toujours, non.

    Là, oui.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  12. #12
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2020
    Messages
    39
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2020
    Messages : 39
    Points : 13
    Points
    13
    Par défaut
    Ah d'accord ! Merci les gars c'est sympa des réponses.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. le plus petit multiple commun de deux chiffres
    Par dongmo dans le forum Mathématiques
    Réponses: 4
    Dernier message: 05/12/2009, 17h31
  2. Trouver la plus petite variable
    Par santacrus dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/06/2009, 15h57
  3. Réponses: 1
    Dernier message: 23/04/2007, 10h11
  4. Trouver le Kième plus petit élément d'un tableau
    Par katrena99 dans le forum Pascal
    Réponses: 10
    Dernier message: 15/11/2006, 23h36
  5. Trouver le plus petit nombre
    Par IDE dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 22/10/2006, 09h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo