Aller au contenu
San Andreas Multiplayer
C_far

Exercice 028 : difftime

Messages recommandés

Bonjour, 

dans cet exercice vous devrez coder une fonction qui existe en C/++ qui est difftime, elle permet de renvoyer la différence en secondes entre deux dates. Dans cet exercice on va simplifier en comparant la différence entre deux heures.

 

Voici son prototype :

int difftime(fromhours, fromminutes, fromseconds, tohours, tominutes, toseconds);

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Coucou, let's try

 

stock difftime(fromhours, fromminutes, fromseconds, tohours, tominutes, toseconds)
{
  return (tohours * 3600 + tominutes * 60 + toseconds) - (fromhours * 3600 + fromminutes * 60 + fromseconds);
}

// On peut toujours foutre une fonction valeur absolue pour éviter des différences négatives mais c'est à l'utilisateur de faire attention :p

 

Modifié par Jhonny

Partager ce message


Lien à poster
Partager sur d’autres sites

Pas mal mais imaginons que je veuille regarder le nombre de secondes entre 18h et 04h du matin ;) 

Partager ce message


Lien à poster
Partager sur d’autres sites

Bien vu Bobby,

Ya peut-être mieux niveau optimisation mais j'ai tenté dans quasiment tous les cas de figures et ça fonctionnait, à voir ...

stock difftime(fromhours, fromminutes, fromseconds, tohours, tominutes, toseconds)
{
	tohours += (tohours < fromhours ? 24 : 0);
	new diff = (fromhours * 3600 + fromminutes * 60 + fromseconds) - (tohours * 3600 + tominutes * 60 + toseconds);
	return (diff < 0 ? -diff : diff);
}

 

  • J'aime 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.


×
×
  • Créer...