Java Horloge exercice aide
Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

Java Horloge exercice aide



  1. #1
    Randomg

    Wink Java Horloge exercice aide


    ------

    Bonjour, j'ai besoin d'aide sur un exercice, je précise que je débute et donc que mon niveau est en corrélation avec celui de l'exercice...
    Voici l'intitulé : "Tracé d'horloge
    Le but de cet exercice est de dessiner une horloge, dont les aiguilles indiquent l'heure fournie par les variables entières minutes, et hours.

    L'horloge est composée :

    d'un disque de couleur noire, de rayon 250 et de centre (250,250)
    d'une grande aiguille blanche de longueur 200
    d'une petite aiguille grise de longueur 150"
    Et les outils avec : "La valeur PI
    Un réel réprésantant la valeur de PI, avec une précision de 10 décimales

    La fonction double cos(double angle)
    Calcule le cosinus de l'angle passé en paramètre, exprimé en radians.

    La fonction double sin(double angle)
    Calcule le sinus de l'angle passé en paramètre, exprimé en radians.

    La fonction void debug(TYPE value)
    Affiche dans la sortie de debug la valeur passée en paramêtre. La valeur peut être de n'importe quel type primitif, ou une String.

    La fonction void setFillColor(String color)
    Règle la couleur de remplissage à color.
    Les valeurs possibles sont "red", "white", "green", "blue", "yellow", "brown" et "black".

    La fonction void circle(int x, int y, int radius)
    Dessine un disque de centre (x,y) et de rayon radius.

    La fonction void line(int x1, int y1, int x2, int y2)
    Trace un trait de la couleur de remplissage courante,
    entre les points (x1, y1) et (x2, y2)."
    Voici le code que j'ai fait pour l'instant : "setFillColor("black");
    circle(250,250,250);
    setFillColor("white");
    double hourHorloge = PI*(15-minutes)/2;
    int hourx = (int)(200*cos(hourHorloge));
    int houry = (int)(200*sin(hourHorloge));
    line(250,250,250+hourx,250+hou ry);
    setFillColor("grey");
    double minuteHorloge = PI*(3-(hours%12+minutes/60.0))/2.0;
    int minutex = (int)(150*cos(minuteHorloge));
    int minutey = (int)(150*sin(minuteHorloge));
    line(250,250,250+minutex,250+m inutey);"
    le problème est que quand je l'exécute il ne trouve que les heures piles genre 12H00, 15h00 mais pas les autres comme 12H12 ou 15H30, je ne trouve pas l'erreur si quelqu'un peut m'aider ce serait avec grand plaisir

    -----

  2. #2
    umfred

    Re : Java Horloge exercice aide

    qu'est-ce tu entends par "il ne trouve que les heures piles" ? (surtout le verbe "trouve").
    Il manque la partie où tu récupères l'heure et où tu fournis ces infos à ton programme.
    Je vois que tu travailles avec minutes pour tracer l'aiguille des heures et hours et minutes pour tracer l'aiguille des minutes (si je suis la logique des noms de variables utilisées)
    (PS: mets ton code dans les balises [ code ] .. [ /code ] (bouton # de l'interface avancée ou en les saisissant dans ton message sans les espaces))

  3. #3
    Randomg

    Re : Java Horloge exercice aide

    C'est la première année que je fais de l'informatique donc c'est possible que je m'exprime mal mais ce que j'entend par "trouver" ce que quand j'exécute le programme, il m'affichera correctement les heures piles 1:00,
    2:00,13:00,etc mais pour les heures comme 15:30, 13:14, 12:12 il n'affichera pas les heures correctes donc par exemple pour 12:12 ça va afficher 11:00 (ou 23:00 ça dépend comment on le prend) ou par exemple pour 16h30 l'horloge affiche 10:30(ou 20:30)
    Code:
    setFillColor("black");
    circle(250,250,250);
    setFillColor("white");
    double hourHorloge = PI*(15-minutes)/2;
    int hourx = (int)(200*cos(hourHorloge));
    int houry = (int)(200*sin(hourHorloge));
    line(250,250,250+hourx,250+houry);
    setFillColor("grey");
    double minuteHorloge = PI*(3.0-(hours%12+minutes/60.0))/2.0;
    int minutex = (int)(150*cos(minuteHorloge));
    int minutey = (int)(150*sin(minuteHorloge));
    line(250,250,250+minutex,250+minutey);
    Et voilà le "vrai" code que j'utilisais, l'autre je me suis trompé c'était pas le bon, j'ai mis des balise comme tu m'as dis mais je sais pas vraiment m'en servir donc je sais pas si c'est comme ça

  4. #4
    umfred

    Re : Java Horloge exercice aide

    Pour le coup, ça a peut-être à voir avec ma remarque sur l'utilisation des variables (variable minutes pour définir/calculer les coordonnées de l'aiguille des heures (hourx/houry), non ?

  5. A voir en vidéo sur Futura
  6. #5
    Randomg

    Re : Java Horloge exercice aide

    Oui c'est possible, mais j'ai déjà essayé de changer plein de trucs même les coordonnées pour l'aiguille des heures comme tu proposes, même celle des minutes, ou rajouter une autre variable, ou changer les signes de sin et cos,etc
    Mais bon au final le "meilleur" code que j'ai trouvé, ou en tout cas qui affiche correctement une partie de l'horloge c'est celui que j 'ai envoyé, mais sinon je vois vraiment pas quoi ajouter, modifier ou supprimer...

Discussions similaires

  1. exercice des tableaux en java?
    Par biancalm19 dans le forum Programmation et langages, Algorithmique
    Réponses: 2
    Dernier message: 19/12/2022, 17h29
  2. Exercice JAVA simple
    Par invite5ae1227c dans le forum Programmation et langages, Algorithmique
    Réponses: 5
    Dernier message: 24/06/2016, 11h48
  3. Exercice java
    Par invitee32ad308 dans le forum Programmation et langages, Algorithmique
    Réponses: 10
    Dernier message: 08/10/2011, 16h10
  4. cours exercice de java
    Par invitebff7a2e8 dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 21/12/2009, 08h40