Question simple transformer un Double [Java] - Java - Programmation
Marsh Posté le 05-10-2003 à 21:48:00
int min = (int) Math.floor(duree);
int sec = (int) ((duree - min) * 60)
ca dépend de ton objet ... mais comme ca, je dirais à l'extérieur ...
Marsh Posté le 05-10-2003 à 22:09:26
ReplyMarsh Posté le 05-10-2003 à 22:14:19
ReplyMarsh Posté le 05-10-2003 à 22:17:58
benou a écrit : int min = (min) Math.ceil(duree); |
Marsh Posté le 05-10-2003 à 22:19:11
Avec cette méthode, ca ne fonctionne que si min et sec sont des double et le résultat ressemble a ceci :
6.0 -32.1988487702773
Ce que j'aurais besoin ces plutot 6 32.
Comment faire ? (je sais que c'est simple, mais pourtant je ne trouve pas)
Marsh Posté le 05-10-2003 à 22:20:08
utilise son code tel quel, vu qu'il utilise des ints tes resultats sont assez improbables
Marsh Posté le 05-10-2003 à 22:20:49
BelzME a écrit : Avec cette méthode, ca ne fonctionne que si min et sec sont des double et le résultat ressemble a ceci : |
Marsh Posté le 05-10-2003 à 22:20:57
la prochaine fois t'y arrivera peut-être du premier coup ...
Marsh Posté le 05-10-2003 à 22:21:47
benou a écrit : |
c'est moche tous ces cast
c'est mieux ?
Marsh Posté le 05-10-2003 à 22:22:15
Ma duree est en double et si j'utilise son code tel quel ca ne compile pas.
"Type mismatch: cannot convert from double to int"
Marsh Posté le 05-10-2003 à 22:24:49
Taz a écrit : c'est mieux ? |
quand tu fermes ta gueules, c'est mieux ...
Marsh Posté le 05-10-2003 à 22:27:31
benou a écrit : |
spa ma faute si tu te fais piéger sur une question d'algo à la con : 2 lignes, un faut de syntaxe, une erreur d'algo. tu fatigues
Marsh Posté le 05-10-2003 à 22:28:06
Code :
|
ca compile et ca donne ca comme résultat :
Citation : min : 10, sec :30 |
remarque : j'avais mit ceil à la place de floor ...
Marsh Posté le 05-10-2003 à 22:29:52
benou a écrit :
|
[benoit@athlon tmp]$ javac Test.java && java Test
min : 11, sec :-30
pour plus d'incompréhension
Marsh Posté le 05-10-2003 à 22:32:24
Oki, ta raison, maintenant ca fonctionne, c'est juste que j'avais pas remplacer (min) par (int).
Merci bcp !
Marsh Posté le 05-10-2003 à 22:33:58
n'oublie pas floor
parce que ceil(10.5) -> 11.0
edit : ma remarque était donc loin d'être inutile
Marsh Posté le 05-10-2003 à 22:36:25
BelzME a écrit : Oki, ta raison, maintenant ca fonctionne, c'est juste que j'avais pas remplacer (min) par (int). |
hé bé ... y en a qui reflechissent !!!
Marsh Posté le 05-10-2003 à 21:36:52
Bonjour ma question est plutot simple mais je ne sais pas vraiment quel methode utiliser.
J'ai une classe d,objet et dans cet objet j'ai une duree stocke en double. (ex : 10 min 30 seconde = 10.5)
Je cherche comment retransformer mon double en minute et seconde.
De plus, devrais-je faire cette transformation directement dans mon objet, ou plutot dans la classe qui appelle cette objet ?
Merci !