fonction sommeil alternative - page 4

 

Simon,


10 = ( (10000+10) - (10000) ) ;


La différence est de 10.


merci

 
WhooDoo22:

Simon,

10 = ( (10000+10) - (10000) ) ;

La différence est de 10.

Non, c'est possible, mais la raison que vous avez montrée ci-dessus montre que votre raisonnement est erroné. Vous devez relire la documentation TimeSeconds() et quand vous l'aurez lue aussiTimeHour() etTimeMinute(), réfléchissez à une date de 12:33:21 et à ce que chacune de ces fonctions retournera pour cette date.
 

Simon,

Vous voulez dire que le format '10' est incorrect ? Si oui, je pourrais faire un ajustement rapide de '10' à '00:00:10'.

Qu'en dites-vous ?


Je vous remercie.

 
WhooDoo22:

Simon,

Vous voulez dire que le format '10' est incorrect ? Si oui, je pourrais faire un ajustement rapide de '10' à '00:00:10'.

Non, avez-vous lu la documentation dont je vous ai donné le lien ?

Prenons mon exemple, 12:33:21

TimeHour() "Retourne l'heure pour le temps spécifié", donc retournera12 pour une date de 12:33:21.

TimeMinute()"Retourne les minutes de l'heure spécifiée", donc33 pour une date de 12:33:21.

TimeSeconds()"Retourne le nombre de secondes écoulées depuis le début de la minute pour l'heure spécifiée"; ainsi sera-t-il retourné21 pour une date de 12:33:21.

Savez-vous ce qu'est une date ? Savez-vous ce qu'est la pertinence de 1970 ? bien.

SomeTime = 10000 quand est-ce que c'est ? découvrons-le, 10000 secondes est 2.777 heures donc il est 2 heures du matin, 0.77777 heures est 46.6666 minutes, donc 46 minutes après 2 heures du matin, et 0.6666 minutes est 40 secondes. Donc une date de 10000 est le 1er janvier 1970 01:46:40 et 10000 + 10 est 01:46:50 donc pour cet exemple votre réponse de 10 était correcte, mais pour la mauvaise raison.

Si mon exemple était 10000 et 10000 + 30, votre réponse aurait été 30, mais ces dates auraient été 1st Jan 1970 01:46:40 et 01:47:10, la réponse correcte aurait été 10 - 30 = -20 et non 30.

 

Simon,

Avez-vous lu la documentation dont je vous ai donné le lien ?

Oui.


Savez-vous ce qu'est un datetime ?

Datetime est un type de données.


Savez-vous quelle est la pertinence de 1970 ?

Je suppose que dans ce cas, il s'agit de mille neuf cent soixante-dix secondes ?


votre réponse de 10 était correcte, mais pour la mauvaise raison.

Je crois que je comprends Simon. Vous avez fait valoir votre point de vue. Merci pour votre explication.


De plus, je crois que votre explication m'a permis de découvrir une solution pour passer de l'impossibilité de mettre le temps en pause dans tester à la possibilité de le faire.

Je pourrais éventuellement utiliser un cycle pour fonctionner sur un temps prédéterminé. Lorsque le temps s'écoule jusqu'à un temps inférieur, ce dernier sera remis à zéro et le cycle continuera sans fin SAUF si ce temps est toujours basé sur des tics. Les tics deviennent une véritable nuisance pour moi.


Je peux peut-être trouver un moyen de lancer l'EA sans attendre les ticks. Je peux utiliser une condition "if" pour déclencher la fonction start().

Qu'en pensez-vous ?


J'ai ajouté ce code en SRC

bool start;
   
if(start==false)start();

à un EA et j'ai reçu une erreur nommée "stack overflow" de la part du journal dans le testeur.


Merci pour votre aide.

 
WhooDoo22:

Savez-vous ce qu'est une datetime ?

datetime est un type de données.


Savez-vous quelle est la pertinence de 1970 ?

Je suppose que dans ce cas, il s'agit de mille neuf cent soixante-dix secondes ?


WhooDoo22:


Je pourrais éventuellement utiliser un cycle pour fonctionner sur un temps prédéterminé. Lorsque le temps s'écoule jusqu'à un temps inférieur, ce dernier est remis à zéro et le cycle se poursuit sans fin, à moins que ce temps ne soit toujours basé sur des tics. Les tics deviennent une véritable nuisance pour moi.


Il ressort clairement de ces déclarations que vous ne lisez pas ce qui est écrit pour vous aider ou que vous ne pouvez tout simplement pas le comprendre. Comme vous n'avez donné aucune indication que vous n'êtes pas capable de comprendre, je ne peux que conclure que vous n'essayez pas de comprendre ce qui est écrit. Dans ce cas, je ne prendrai pas plus de votre temps pour essayer de vous aider.