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 :

double required: float


Sujet :

avec Java

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2009
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 24
    Points : 11
    Points
    11
    Par défaut double required: float
    Bonjour à tous,
    je suis entrain d'apprendre le java et mon compilateur me sort cette erreur que je ne comprend pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    found*:*double*required:*float


    il me sort l'erreur à cette ligne (.PI est surligné en rouge) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    float x = Math.PI;
    voici mon script :
    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
    23
    24
    25
    26
    27
    28
     
    import java.util.Scanner;
    public class Pr06
    {
        public static float volume(float r)
        {
          float x = Math.PI;
          float  y = Math.pow(r, 3);
            return(4*x*y/3);
        }
     
        public static float surface(float r)
        {
            float x = Math.PI;
            float y = Math.pow(r, 2);
            return(4*x*y);
        }
     
        public static void main(String[] args)
        {
            Scanner scan = new Scanner(System.in);
            System.out.print("Entrer le rayon du sphère : ");
            float nb = scan.nextInt();
            float vol = volume(nb);
            float surf = surface(nb);
            System.out.println("la surface du sphère fait : " + surf + " et sont volume fait : " + vol);
        }
    }

    le script à pour but de calculer la surface et le volume d'un sphère.

    merci de vos réponse,
    cordialement,
    choco,

    Ps: j'utilise BlueJ comme IDE

  2. #2
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 713
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 713
    Points : 4 792
    Points
    4 792
    Par défaut
    Eh bien, comme ton message d'erreur l'indique,
    Math.PI est du type double (voir documentation)
    alors que tu cherches à avoir un float :
    ce qui est une grave violation du typage des données dans Java
    passible d'une amende de 1024 €uros à verser sur le compte de developpez.net

  3. #3
    Modérateur

    Avatar de Robin56
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juin 2009
    Messages
    5 297
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juin 2009
    Messages : 5 297
    Points : 13 670
    Points
    13 670
    Par défaut
    Comme tu peux le voir ici. Math.PI rend une valeur de type double. Toi tu veux du type float. Un double est plus "gros" qu'un float. Plusieurs solutions :
    1. Tu utilises ton x en double.
    2. Tu castes ton Math.PI en float : float x = (float)Math.PI;

Discussions similaires

  1. Convertion String en double ou float
    Par superjaja dans le forum C#
    Réponses: 6
    Dernier message: 31/12/2007, 13h00
  2. différence entre double et float
    Par Maria1505 dans le forum C++
    Réponses: 2
    Dernier message: 03/01/2007, 05h16
  3. du double au float
    Par yvesall dans le forum C
    Réponses: 7
    Dernier message: 10/11/2006, 16h13
  4. prototype erf : double ou float ?
    Par nicolas.puiroux dans le forum C
    Réponses: 5
    Dernier message: 07/09/2006, 10h39

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