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 :

Annale test question: 10 + 20 / 3


Sujet :

avec Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    233
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 233
    Points : 92
    Points
    92
    Par défaut Annale test question: 10 + 20 / 3
    Bonjour,

    Je fais des annales de test en Java et j'arrive pas à m'expliquer pour la réponse à la question

    14) Quel est le résultat de l'expression (10 + 20 / 3) ?
    a) 10
    b) 16
    c) 16,66666667f
    d) Erreur: Expression invalide
    est la b? J'aurais dit la c justement parce que c'est un flottant!

    Pourriez-vous m'éclairer svp?

    Merci d'avance!

  2. #2
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,

    Citation Envoyé par bilou_12 Voir le message
    J'aurais dit la c justement parce que c'est un flottant!
    Il n'y a aucun flottant dans l'expression...


    a++

  3. #3
    Membre habitué
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Novembre 2011
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Novembre 2011
    Messages : 101
    Points : 134
    Points
    134
    Par défaut
    Il faut faire attention à la priorité des opérations en java.

    Le casting est prioritaire sur les opération d'addition et de division. Cela entraîne que la valeur du résultat est casté en int car tous les arguments sont de type int. Même si ce résultat est attribué à une variable float.

    Il y aurait eu un float ou un double dans le tas l'opération aurait donnée un résultat décimal...

    Enfin, tout ça remonte à quelques années mais il me semble que ça doit être ça l'explication.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    233
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 233
    Points : 92
    Points
    92
    Par défaut
    Le "f" de 16.666667f ne signifie pas que c'est un flottant?

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    233
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 233
    Points : 92
    Points
    92
    Par défaut
    Ok! Je vais me renseigner la dessus!

    Désolé on a posté en même temps...

    Merci

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    233
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 233
    Points : 92
    Points
    92
    Par défaut
    Petite précision tout de même:

    pourquoi a t'on:

    byte a = 1;
    byte b = 2;

    byte c = a + b; // a and b are promoted to int
    Tous les arguments sont de type byte! Mais le résultat est int?

  7. #7
    Membre habitué
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Novembre 2011
    Messages
    101
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Distribution

    Informations forums :
    Inscription : Novembre 2011
    Messages : 101
    Points : 134
    Points
    134
    Par défaut
    Les opérations ne peuvent être réalisées sur un type byte. Celui-ci est automatiquement casté en int s'il subit une addition, soustraction ou autres opérations.

    Le type byte est surtout utilisé pour faire des tests si les valeurs sont petites.

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    233
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 233
    Points : 92
    Points
    92
    Par défaut
    Ok! Merci Proxy

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

Discussions similaires

  1. Question tests recrutement CAPGEMINI
    Par DATAdesGOONIES dans le forum SSII
    Réponses: 20
    Dernier message: 14/10/2014, 09h10
  2. Réponses: 21
    Dernier message: 09/02/2008, 23h09
  3. [BETA TEST] Questions
    Par MoDDiB dans le forum NxEngine
    Réponses: 37
    Dernier message: 30/06/2007, 21h04
  4. [Test] Question sur l'importance des tests
    Par foufa007 dans le forum Test
    Réponses: 3
    Dernier message: 07/03/2007, 15h45
  5. Réponses: 2
    Dernier message: 22/04/2005, 16h44

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