debutant... - C - Programmation
Marsh Posté le 11-04-2007 à 22:08:47
par contre quand par exemple je fait fonctionné ma fonction avec 90 min il m'affiche "correspond a 90h et 90min", je comprend pas
Marsh Posté le 12-04-2007 à 03:16:06
Pourquoi faire simple quand on peut faire compliqué...
Tu prends tes minutes, et tu leur retranches 60 tant que minutes >= 60. À chaque retranchement, tu incrémentes ta variable heures. T'as plus qu'à afficher le résultat.
Marsh Posté le 12-04-2007 à 11:05:57
Pourquoi ne pas avoir eu recours à la division entière ?
Code :
|
Marsh Posté le 12-04-2007 à 17:42:54
-Opera- a écrit : Pourquoi faire simple quand on peut faire compliqué... |
encore plus simple c'est d'utiliser l'opérateur modulo, puis retrancher le reste et faire la division
Marsh Posté le 12-04-2007 à 17:48:02
En pratique, vu comment la division entière fonctionne, faire le modulo et retrancher le reste n'est pas nécessaire.
Marsh Posté le 12-04-2007 à 20:11:28
Chaos Intestinal a écrit : En pratique, vu comment la division entière fonctionne, faire le modulo et retrancher le reste n'est pas nécessaire. |
convertir en heure ET minutes, avec une simple division tu auras du mal...
Marsh Posté le 12-04-2007 à 20:30:44
Oui mais le modulo est déjà dans le printf et pas nécessaire dans la fonction heure().
Enfin je crois que tout le monde est d'accord.
Marsh Posté le 12-04-2007 à 20:44:12
div_t div(int numerator, int denominator);
Marsh Posté le 12-04-2007 à 21:01:20
Vous avez raison je suis trop con, on peut faire ça avec une simple macro d'une ligne...
Ça m'apprendra à faire le malin en postant à 3 heures du mat' au lieu de pioncer comme tout le monde.
Marsh Posté le 12-04-2007 à 23:43:31
Pytre a écrit : Oui mais le modulo est déjà dans le printf et pas nécessaire dans la fonction heure(). |
oui en effet j'avais mal lu
Marsh Posté le 11-04-2007 à 21:56:48
Voila j'ai fait un petit programme qui convertit un nombre de minute en heure et minute mais j'ai une erreur lors de la compilation que j'arrive pas a résoudre:
#include <stdio.h>
#include "inf101.h"
int heure(int n)
{
int b =0;
int i;
{
if(n<60)
return n;
else
for(i=60;i<n;i++)
b =b +1;
if(b==60)
b=0;
}
return b;
}
int main(void)
{
printf("saisir un nombre correspondant au minute:" );
int n = lire_entier();
printf("%d correspond à %d heure et %d minute.\n",n, n%60, heure(n));
il m'indique comme erreur pour la dernier ligne :expected declaration or statement at end input.