Forum Liberty Basic France

Débutant » Afficher des valeurs horaires entières à partir d'un nombre de minutes par exemple 2506 minutes --> X Jours, X heures, X minutes
Le 30/10/2013 à 11h28

Libertynaute Timide

Groupe: Membre

Inscrit le: 09/10/2013
Messages: 27
Bonjour à tous
Le mercredi! c'est la programmation dans mon taff :) J'aime bien mais là ces temps je peine bcp...

Un exercice me demande d'afficher des valeurs comme telles

Exemple : si l'on entre 2410 minutes
Résultat affiché : 1 jour, 16 heures, 10 minutes.

Et je dois créer le programme qui me fait ça.. Alors étant donné que j'essaie x fois toutes les formules possibles (avec int bien sur) eh bah ça fonctionne pas! Et là, j'ai ce code pour l'instant ;

Citation:

'Demande
Input "Entrez le nombres de minutes : " ; Minutes

'Calculs
Minute = (int Heures)*60
Heure = int Minutes/60
Jour = int Minutes/1440

'Affichage
Print int Jour ; " Jours " ; int Heure ; " Heures " ; int Minute ; " minutes."
____________________
si tu veux perdre 5 minutes de ta vie à me découvrir : http://www.youtube.com/watch?v=CXNpHi669oI

Web    
Le 30/10/2013 à 12h54

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2470
Des questions comme celle-là, il vaudra mieux les poser dans: "Débutant".
Je te fais ça. ....à+.
____________________
Roro

   
Le 30/10/2013 à 13h11

Libertynaute Timide

Groupe: Membre

Inscrit le: 09/10/2013
Messages: 27
Tellemnt dur à trouver le bouton poster sur ce forum que je me suis pas fait chier a prendre le premier forum que j'ai trouvé le bouton pour y poster..
____________________
si tu veux perdre 5 minutes de ta vie à me découvrir : http://www.youtube.com/watch?v=CXNpHi669oI

Web    
Le 30/10/2013 à 13h34

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2470
Tiens... Je te l'ai fais un peu chiadé. Histoire que tu te prenne un peu le choux. :D
Il y a une petite erreur. la trouvera tu ?
Code VB :
 
 totalmn= 2410
 print totalmn;" minutes... sont égales à:"
 totalh = int(totalmn/60)
 if totalh > 24 then
    totalj=int(totalh/24)
 end if
 if totalj > 1 then
    j$="Jours"
 else
    j$="Jour"
 end if
 print int(totalj);"..."; j$
 resteh= int(totalh - (totalj * 24)) 'nomb h restantes après retrait des jours
 if resteh > 1 then
    h$="Heures"
 else
    h$="Heure"
 end if
 print resteh; "..."; h$
 restemn = totalmn - ((totalj* 60 *24)+ (resteh * 60)) 'gare aux parenthèses !
 if restemn > 1 then
    mn$="Minutes"
 else
    mn$="Minute"
 end if
 print restemn; "...";mn$
 print
 print "Soit:...";totalj;" ";j$;" ";totalh;" ";h$;" et ";restemn;" ";mn$
 
____________________
Roro

   
Le 30/10/2013 à 15h10

Libertynaute Timide

Groupe: Membre

Inscrit le: 09/10/2013
Messages: 27
Merci pour ce code :)
Je le refais à ma sauce avec des détections d'erreurs assez marrantes.. Genre
else
mn$="Minute"
end if

J'y arrive sans avoir besoin de else ni de end if
____________________
si tu veux perdre 5 minutes de ta vie à me découvrir : http://www.youtube.com/watch?v=CXNpHi669oI

Web    
Le 30/10/2013 à 16h21

Libertynaute Timide

Groupe: Membre

Inscrit le: 09/10/2013
Messages: 27
HAHAHAHAHAHAHAHAHAHA
Code VB :
 
Input "Nombre de minutes = " ; Totalmin
Print TotalMin ; " minutes... sont égales à:"
 totalh = int(Totalmin/60)
 if totalh > 24 then
    totalj=int(totalh/24)
 end if
 if totalj > 1 then
    j$="Jours"
 else
    j$="Jour"
 end if
 print int(totalj);"        "; j$
 resteh= int(totalh - (totalj * 24)) 'nomb h restantes après retrait des jours
 if resteh > 1 then
    h$="Heures"
 else
    h$="Heure"
 end if
 print resteh; "        "; h$
 restemn = Totalmin - ((totalj* 60 *24)+ (resteh * 60)) 'gare aux parenthèses !
 if restemn > 1 then
    mn$="Minutes"
 else
    mn$="Minute"
 end if
 print restemn; "       ";mn$
 print
 CLS
 Print "Nombre de minutes = " ; Totalmin
 print Totalmin ; " minutes est égal à ";totalj;" ";j$;" ";totalh;" ";h$;" et ";restemn;" ";mn$
 



Qu'en penses-tu? (J'ai pas changé grand chose, juste deux ou trois valeurs et ai remodelé le resultat final
____________________
si tu veux perdre 5 minutes de ta vie à me découvrir : http://www.youtube.com/watch?v=CXNpHi669oI

Web    
Le 30/10/2013 à 18h43

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2470
Et bé c'est très bien. Mais j'ai l'impression que tu n'a pas détecté la petite erreur.
A-tu vérifié la validité du résultat. ?
Avec par exemple: 2410 mn
____________________
Roro

   
Le 31/10/2013 à 07h56

Libertynaute Timide

Groupe: Membre

Inscrit le: 09/10/2013
Messages: 27
des variables en trop? (inutiles)
____________________
si tu veux perdre 5 minutes de ta vie à me découvrir : http://www.youtube.com/watch?v=CXNpHi669oI

Web    
Le 31/10/2013 à 09h47

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2470
Les variables en trop ne sont pas des erreurs, ce sont des "maladresses", qui ne perturbent pas le fonctionnement, et ne génèrent pas d'erreurs.
Une erreur donne de faux résultats.
Pour trouver, il faut suivre le déroulement jusqu'à la fin.
Je pense que si j'avais utilisé des noms de variables non-explicites, l'erreur serait plus apparente.
____________________
Roro

   
Le 31/10/2013 à 12h00

Libertynaute Timide

Groupe: Membre

Inscrit le: 09/10/2013
Messages: 27
Mais c'est quoi cette erreur finalement?
____________________
si tu veux perdre 5 minutes de ta vie à me découvrir : http://www.youtube.com/watch?v=CXNpHi669oI

Web    
Le 31/10/2013 à 13h10

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2470
Et ben, il faut la trouver... Elle est grosse comme une maison. :|
Lance mon premier code...Et ouvre les yeux... ;)
____________________
Roro

   
Le 31/10/2013 à 16h12

Libertynaute Timide

Groupe: Membre

Inscrit le: 09/10/2013
Messages: 27
LOL c'est le premier truc que j'ai retiré!!! Ton print de valeurs pour 2440 minutes là... hahahaha
____________________
si tu veux perdre 5 minutes de ta vie à me découvrir : http://www.youtube.com/watch?v=CXNpHi669oI

Web    
Le 31/10/2013 à 16h13

Libertynaute Timide

Groupe: Membre

Inscrit le: 09/10/2013
Messages: 27
et mon MSP m'a dit qu'il y avait des codes dont je n'avais pas besoin hahaha
____________________
si tu veux perdre 5 minutes de ta vie à me découvrir : http://www.youtube.com/watch?v=CXNpHi669oI

Web    
Le 31/10/2013 à 18h52

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2470
Eh non...Ce n'est pas ça. :p
Réflexion faite, ton MSP, il est drôlement fort; pour pouvoir dire de quoi tu aura, ou n'aura pas besoin. :hehe
____________________
Roro

   
Le 04/11/2013 à 12h56

Libertynaute Timide

Groupe: Membre

Inscrit le: 09/10/2013
Messages: 27
bon je donne ma langue au chat.... meme si mon prog fonctionne
____________________
si tu veux perdre 5 minutes de ta vie à me découvrir : http://www.youtube.com/watch?v=CXNpHi669oI

Web    
Le 04/11/2013 à 13h24

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2470
Je suis au regret de te dire que ton prog; celui que tu a posté le: 30/10/13 à: 16h21; (et qui est en fait le mien.auquel tu a retiré 3 lignes de print et ajouté 1 ligne d'input.)
s'il fonctionne; certes.....Donne de faux résultats.
Because: Il contient la petite erreur. (qui, si elle était un loup, t'aurait dévoré depuis longtemps.)
Par malheur; le chat viens tout juste de finir sa gamelle, et s'est barré courir la femelle.
Il va donc falloir attendre son retour pour lui proposer ta langue. (que je mets au frigo en attendant.)
.....à+. ;)
____________________
Roro

   
Le 05/11/2013 à 08h36

Libertynaute Timide

Groupe: Membre

Inscrit le: 09/10/2013
Messages: 27
c'est parce que tu m'as foutu une erreur qu'il donne de faux résultats??? loooool j'ai encore le temps d'y remédier mais là je fais pas de prog maintenant je suis dans un autre truc auquel je me prends grave la tête lol alors je reverrai mon programme quand j'aurai le temps....

Et a partir de ton programme j'en referai un nouveau donc il sera pas exactement syntaxé comme le tien ;)
____________________
si tu veux perdre 5 minutes de ta vie à me découvrir : http://www.youtube.com/watch?v=CXNpHi669oI

Web    
Le 05/11/2013 à 10h11

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2470
Citation:
je suis dans un autre truc auquel je me prends grave la tête lol

Miam miam! la prise de tête! :miam :miam
Fait croquer un peu de ton truc (en MP si c'est trop hors sujet pour ce forum.)
Pour envoyer un Mp; tu clique sur mon nom (à gauche d'un de mes messages) tu descends dans la page et tu trouve "MP".
L'erreur, je ne l'y ai pas mise exprès, mais quand je l'ai vue , je l'y ai laissé pour te faire un peu travailler les neurones.
____________________
Roro

   
Le 06/11/2013 à 13h49

Libertynaute Timide

Groupe: Membre

Inscrit le: 09/10/2013
Messages: 27
OOOOKKKKK.... c'est les heures ta petite erreur......
2440 = 1 Jour 40 heures non mais je rêve...
____________________
si tu veux perdre 5 minutes de ta vie à me découvrir : http://www.youtube.com/watch?v=CXNpHi669oI

Web    
Le 06/11/2013 à 14h22

Administrateur

Groupe: Administrateur

Inscrit le: 04/03/2012
Messages: 2470
Oui ! :top
ça, c'est le résultat de l'erreur. Pour la corriger; il faut en trouver la cause. :)
____________________
Roro

   
Débutant » Afficher des valeurs horaires entières à partir d'un nombre de minutes par exemple 2506 minutes --> X Jours, X heures, X minutes  

 |  |

1 Utilisateur en ligne : 0 Administrateur, 0 Modérateur, 0 Membre et 1 Visiteur
Utilisateur en ligne : Aucun membre connecté
Répondre
Vous n'êtes pas autorisé à écrire dans cette catégorie