CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[Java] Trinôme du second degré

Neyce
Neyce
Niveau 8
30 octobre 2013 à 16:27:32

Bonjour. Il y a peu j'ai fait un sujet parce que je n'arrivais pas à finaliser ce projet lycéen dans lequel il fallait réaliser un programme java capable de :

:d) Résoudre une équation du second degré
:d) Afficher cette équation
:d) Afficher sa forme canonique
:d) Afficher sa forme factorisée

Bien, le projet est à présent terminé. Je voudrais le poster ici parce que bien que d’après mes tests, le programme fonctionne, je n'ai peut être pas tout vu, enfin, je ne fais que débuter dans le java, donc même si mon programme fonctionne, je suis certain que le code est purement dégueulasse.

Je voudrais que certains d'entre vous y jettent un oeil si vous vous ennuyez, et que vous me dîtes ce que vous en pensez. Ce qui ne va pas, surtout.

http://www.mediafire.com/?hehe7xn1oh6zdai

Merci à ceux qui vont consacrer du temps à ce TP amateur :)

vive_cod4
vive_cod4
Niveau 9
30 octobre 2013 à 18:08:08

Alors voici mes remarques :

- Tu as copié/collé plusieurs fois la partie pour entrer un coefficient. Si tu veux modifier, tu vas devoir le faire plusieurs fois ! Essaie de faire une fonction.

(- D'une règle générale, il faut faire attention aux nombres réels et aux comparaisons avec, mais à ton niveau, pas besoin de t'en soucier, ça marchera.)

- Quand tu affiches tes nombres, si je rentre 1.0 par exemple, ça m'affiche 1.000000, peut-être tu peux réduire à x décimales pour l'affichage

- Ton code fonction aussi pour des entiers, car si je rentre 1, il sera converti en double

- Améliore ton indentation !

- A la fin, tu affiches pour la forme factorisée : 1.000000(x-(-1.000000))² +(-0.000000), pourquoi ne pas simplifier -- et +- :) ? Après peut-être c'est demandé de laisser comme ça, je sais pas.

Sinon c'est un bon début. Ce que je retiendrai c'est vraiment l'indentation et qu'utiliser des fonctions te rendra la vie plus facile ! (Diviser pour régner) Quant aux commentaires, je ne te fais pas de remarque car tu débutes, mais en principe on met un commentaire si cela peut aider à la compréhension. Par exemple quand tu dis "On affiche ..." et qu'en dessous il y a un out.printf, c'est obvious.

Neyce
Neyce
Niveau 8
30 octobre 2013 à 19:11:57

Merci pour ta réponse :)

Alors c'est noté pour la fonction. J’espère que le prof fera par rapport au niveau lui aussi. Normalement ce truc était à faire sur Algobox, mais il acceptait aussi les travaux sur langages de programmation. J'ai prit ça comme un TP un peu plus important que les autres.

Je suis d'accord pour la décimale. Mais comment réduire ce truc ? Il n'y a que la class BigDecimal ?

Ouais mon indentation est absolument horrible je vais revoir ça :rire:

Enfin pour ce qui est des signes je n'ai pas bien saisit. Enfin, je ne vois pas comment faire en sorte que les signes apparaissent d'eux même...alors j'ai fait ce truc basé sur les parenthèses.

Y'a une solution pour ça ?

vive_cod4
vive_cod4
Niveau 9
30 octobre 2013 à 19:46:30

Pour le formatage, tu as une classe DecimalFormat, par exemple : http://www.javaprogrammingforums.com/java-programming-tutorials/297-java-program-format-double-value-2-decimal-places.html

Mais fais-toi pas de souci, si tu dis que c'était même pas un TP prog, ça va passer crème.

Alors pour les signes, imaginons :

a = -4

et tu veux afficher
(x-(a))= (x-(-4)) = (x+4)

Si tu fais b = -a, alors b vaudra 4. A toi de finir

Neyce
Neyce
Niveau 8
31 octobre 2013 à 00:40:02

Okay je m'attaque d'abord au soucis des décimales.

C'est bon au niveau des méthodes Print.

Mais Printf ?

Voici ce que j'ai essayé, en gros :

-------------------------

double a = 1;
double b = 2;
double c = 3;
DecimalFormat df = new DecimalFormat("#.##");
System.out.printf("(%f)x²+(%f)x+(%f)",df.format(a)
,df.format(b),df.format(c));

--------------------------

Mais ça ne compile pas. L'erreur doit te paraître évidente, mais pour moi elle ne l'est pas :noel:

TommyVercittee
TommyVercittee
Niveau 10
31 octobre 2013 à 16:33:59

Tient moi j'aimerai savoir comment il faut gérer DecimalFormat avec Pintf !

ryviel
ryviel
Niveau 5
31 octobre 2013 à 16:38:25

System.out.printf("(%.2f)x²+(%.2f)x+(%.2f)",a ,b ,c);
Est-ce que cela fonctionne? (sans utiliser le DecimalFormat)

ryviel
ryviel
Niveau 5
31 octobre 2013 à 16:40:24

Et désolé du double post mais sinon pour ton erreur, la méthode format de DecimalFormat renvoie un String, pas un float.

Neyce
Neyce
Niveau 8
02 novembre 2013 à 11:03:00

Ok je poste la version finale du programme ( que j'ai envoyé au prof y'a maintenant 15 minutes ) :

http://www.mediafire.com/download/m7z6wlbdsw1kw8s/Trin%C3%B4me.rar

Au final j'ai amélioré l'incrementation et cette histoire de décimales. J'ai également corrigé une erreur, le programme n'affichait pas la bonne factorisation lorsque Delta équivalait zéro.

Donc voilà, merci à tout ceux qui m'ont aidé ici, franchement, merci. Je souhaite également bon courage aux quelques pèlerins du net à la recherche de réponses qui tomberont sur ce sujet pour réussir leur propre éventuel TP sur les trinômes :ok:

Moi d'ici là ça fera quelques temps que ça me sera sortir de la tête. Enjoy.

Sous forums
  • Aide à l'achat Mac
  • Steam Deck
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Macintosh
  • Hardware
La vidéo du moment