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 :

Puissance d'un nombre


Sujet :

avec Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2013
    Messages : 13
    Par défaut Puissance d'un nombre
    Bonjour,
    Je veux un programme "java“ qui calculé est Ce que un nombre Ecrire ce forme 2 puissance n
    exemple :
    16 ---> 2 puissance 4
    16---> (2)4
    Merci

  2. #2
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Hello,

    À ma connaissance il n'y a pas de méthode directe pour savoir ça, mais ça se programme très facilement. Il y a plusieurs approches.

    - Il y a la méthode théorique :

    Vérifier que le reste de la division par 2 est bien 0, puis faire la division par deux, et recommencer jusqu'à tomber sur 1. Garder le nombre de fois qu'on a fait ça, et on obtient la puissance de 2 du nombre de départ.

    - La méthode par élimination :

    En int (ou en long,) on ne peut représenter que 30 (ou 62) puissances de 2 positives. Pour chacune d'elles, essayer si le nombre est égal à elle. Par exemple partir de 2 et multiplier par deux à chaque fois.

    - Et la méthode d'arithmétique binaire :

    Une puissance de 2, c'est un entier qui contient exactement 1 bit à 1, et tous les autres bits à zéro. Il suffit de compter le nombre de bits à 1. Et s'il y en a bien un seul, il suffit de regarder lequel pour connaître la puissance en question.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Inscrit en
    Octobre 2012
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Octobre 2012
    Messages : 20
    Par défaut
    Bonjour,

    Vous pouvez essayer cette solution :

    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
    20
    21
    22
    import java.util.Scanner;
     
    public class Exemple1 {
     
    	public static void main(String[] args) {
    		int n,s=0;
    			Scanner scn = new Scanner(System.in);
    			System.out.println("Faites entrer la valeur de x :");
    			int x = scn.nextInt();
    			if (x%2!=0){
    				System.out.println("On ne peut pas mettre "+x+" sous la forme de 2 exposant !");
    				System.exit(1);}
    			else
    			do{
    				n=x/2;
    				x=n;
    				s++;
    			}
    			while (n!=1);
    			System.out.println("Le résultat est 2 exposant "+s);		
    		}
    	}

  4. #4
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    D'après ce programme, 10 c'est 2 puissance 3.
    Sauf erreur de ma part, 2 puissance 3 ça vaut 8 et seulement 8.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre expérimenté Avatar de Grom61736
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2013
    Messages
    169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Finance

    Informations forums :
    Inscription : Février 2013
    Messages : 169
    Par défaut
    Et ca ne considère pas le cas 1 = 2^0 non plus. ;-)
    En partant du code de Farouk_T, voici

    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
    20
    21
     
    import java.util.Scanner;
     
    public class Exemple1 {
     
    	public static void main(String[] args) {
    		int s=0;
    			Scanner scn = new Scanner(System.in);
    			System.out.println("Faites entrer la valeur de x :");
    			int x = scn.nextInt();
    			while (x!=1){
    			    if (x%2!=0 && x!=1 ){
    				System.out.println("On ne peut pas mettre "+x+" sous la forme de 2 exposant !");
    				System.exit(1);
                                }
    				x=x/2;
    				s++;
    			}
    			System.out.println("Le résultat est 2 exposant "+s);		
    		}
    	}

  6. #6
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Citation Envoyé par Grom61736 Voir le message
    Et ca ne considère pas le cas 1 = 2^0 non plus. ;-)
    Puisque tu veux jouer au plus fin, ce programme fait un truc bizarre quand on lui donne -4 .

    Edit : mauvais copier/coller de ma part. Il fait un truc bizarre quand on lui donne zéro.
    Et les messages d'erreur sont pas bien clairs .
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Réponses: 12
    Dernier message: 10/05/2013, 15h45
  2. calcul du modulo ou puissance d'un nombre
    Par tcheck_vi dans le forum MATLAB
    Réponses: 2
    Dernier message: 03/06/2009, 07h54
  3. Nombres remarquables : Sommes des puissances des sous-nombres
    Par PoZZyX dans le forum Algorithmes et structures de données
    Réponses: 7
    Dernier message: 15/11/2007, 15h20
  4. la puissance d'un nombre
    Par dyala dans le forum Débuter
    Réponses: 9
    Dernier message: 12/11/2007, 16h10
  5. Réponses: 25
    Dernier message: 22/02/2007, 15h40

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