Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > fr.comp.lang.javascript > #2961 > unrolled thread

Calcul vitesse moyenne avec javascript

Started byGaet5 <nospam_fanatic.poloiste@yahoo.fr.invalid>
First post2016-02-07 04:43 -0600
Last post2016-02-29 19:03 +0100
Articles 5 — 3 participants

Back to article view | Back to fr.comp.lang.javascript


Contents

  Calcul vitesse moyenne avec javascript Gaet5 <nospam_fanatic.poloiste@yahoo.fr.invalid> - 2016-02-07 04:43 -0600
    Re: Calcul vitesse moyenne avec javascript Olivier Miakinen <om+news@miakinen.net> - 2016-02-08 12:33 +0100
      Re: Calcul vitesse moyenne avec javascript SAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid> - 2016-02-25 18:27 +0100
        Re: Calcul vitesse moyenne avec javascript Olivier Miakinen <om+news@miakinen.net> - 2016-02-29 00:01 +0100
          Re: Calcul vitesse moyenne avec javascript SAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid> - 2016-02-29 19:03 +0100

#2961 — Calcul vitesse moyenne avec javascript

FromGaet5 <nospam_fanatic.poloiste@yahoo.fr.invalid>
Date2016-02-07 04:43 -0600
SubjectCalcul vitesse moyenne avec javascript
Message-ID<94CdnWagiolbgirLnZ2dnUU7982dnZ2d@giganews.com>
Bonjour,

Je me lance dans le javascript. Soyez indulgent :)

Je suis en train de préparer une fonction permettant de calculer une vitesse
moyenne à partir des réponses d'un formulaire.

J'ai rédigé le formulaire permettant d'extraire les renseignements. Il me reste
donc la fameuse fonction qui permet de calculer cette vitesse moyenne.

Dans mon code, "e;d"e; permet de récupérer la distance.
"e;h"e; les heures, "e;m"e; les minutes et "e;s"e; les secondes.

Il faudrait donc que cette fonction divise la distance "e;d"e; par le temps :
"e;h"e; + "e;m"e; divisé par 60 + "e;s"e; divisé par 3600.

En gros v = d / (h+m+s) 

v = vitesse moyenne en Km/h

Voici mon code sans la fonction que je recherche :

[code]<head>
<style type="e;text/css"e;>
body {
background-color: #90E010;
}
form {
font-size: 12px;
width: 300px;
margin-left:auto;
margin-right:auto;
background-image:
url("e;http://i68.servimg.com/u/f68/19/38/41/03/wood-b10.jpg"e;);
background-repeat: repeat;
border: 1px solid black;
border-radius: 10px 10px 10px 10px;
box-shadow:4px 4px 4px gray,
-1px -1px 4px white;
}
fieldset{
margin-left:auto;
margin-right:auto;
text-align:center;
}
legend,p {
font-family: Monotype Corsiva;
text-align:center;
padding-left:20px;
padding-right:20px;
color: #531014;
font-size: 24px;
}
.left td{
text-align:right;
width:250px;
}
.left td+td {text-align:left}
</style>

<script type="e;text/javascript"e;>
function envoiMessage(form)
{
// Créer un message à partir des informations fournies
var nomTrail = form.NomTrail.value
var d = form.d.value
var h = form.h.value
var m = form.m.value
var s = form.s.value
 
var txt_message ="e;<br><div
style="e;width:390px;height:70px;margin-left:30px;text-align:right;"e;><br><br><br><span
style="e;font-size: 29px;font-family:Monotype Corsiva;color: #531014;"e;>"e; +
NomTrail + "e;</span></div><br><br>"e;
+ "e;[b]Nom du trail : [/b]"e; + NomTrail + 'n'
+ "e;[b]Distance : [/b]"e; + d + 'n'
+ "e;[b]Heures : [/b]"e; + h + 'n'
+ "e;[b]Minutes [/b]"e; + m + 'n'
+ "e;[b]Secondes : [/b]"e; + s + 'n'
+ "e;[b]Vitesse moyenne : [/b]"e; + vitesseMoyenne + 'n';

// Insère le texte construit dans le champ caché "e;message"e; du formulaire
form.message.value = txt_message;
form.subject.value = "e;"e; + NomTrail ;
}

// ICI LA FONCTION PERMETTANT DE FAIRE "e;d"e; divisé par
"e;h"e;,"e;m"e;,"e;s"e;

</script>
</head>

<body>

<form action="e;/post"e; method="e;post"e; name="e;post"e;
enctype="e;multipart/form-data"e; onSubmit="e;envoiMessage(this)"e; >
<input type="e;hidden"e; name="e;lt"e; value="e;0"e; />
<input type="e;hidden"e; name="e;mode"e; value="e;newtopic"e; /> <!-- Un nouveau
topic sera créé -->
<input type="e;hidden"e; name="e;topictype"e; value="e;0"e;
checked="e;checked"e; /> <!-- Value 0: Sujet Normal (1 = Note / 2 = annonce)
-->
<input type="e;hidden"e; name="e;message"e; value="e;"e; /> <!-- Contiendra le
texte du message -->
<input type="e;hidden"e; name="e;f"e; value="e;2"e; /> <!--  ID du forum dans
lequel le message sera posté -->
<input type="e;hidden"e; name="e;subject"e; id="e;titre"e; value="e;"e; /> <!--
titre du sujet  -->


<fieldset><legend ><p>Calculez la vitesse moyenne</p> </legend>
<table class="e;left"e;>
<tr><td><label for="e;NomTrail"e;><center>Nom de la course
:</center></label></td>
<td><input type="e;text"e; name="e;NomTrail"e; id="e;NomTrail"e; size="e;17"e;
maxlength="e;30"e; placeholder="e;Apparaitra comme titre "e; /></td></tr>

<tr><td><label for="e;distance"e;>Distance :</label></td>
<td><input type="e;text"e; name="e;d"e; id="e;d"e; size="e;3"e;
maxlength="e;5"e; placeholder="e;En km"e; /></td></tr>
	
<tr><td><label for="e;hour"e;>Temps de course :</label></td>
<td><input type="e;text"e; placeholder="e;heures"e; name="e;h"e; id="e;h"e;
size="e;3"e; maxlength="e;2"e; /></td></tr>
	
<tr><td><label for="e;minute"e;>Minutes :</label></td>
<td><input type="e;text"e; placeholder="e;minutes"e; name="e;m"e; id="e;m"e;
size="e;3"e; maxlength="e;2"e; /></td></tr>
				
<tr><td><label for="e;second"e;>Secondes :</label></td>
<td><input type="e;text"e; placeholder="e;secondes"e; name="e;s"e; id="e;s"e;
size="e;3"e; maxlength="e;2"e; /></td></tr>
</table>

<br />		   			
<input type="e;submit"e; name="e;post"e; value="e;Calculer !"e; />
<br />
</fieldset> 
		
</form>

</body>[/code]

Pouvez vous m'aider ? 

Merci

[toc] | [next] | [standalone]


#2962

FromOlivier Miakinen <om+news@miakinen.net>
Date2016-02-08 12:33 +0100
Message-ID<n99udu$716$1@cabale.usenet-fr.net>
In reply to#2961
Bonjour,

Le 07/02/2016 11:43, Gaet5 a écrit :
> [...]
> 
> Dans mon code, "e;d"e; permet de récupérer la distance.
> "e;h"e; les heures, "e;m"e; les minutes et "e;s"e; les secondes.

Je ne sais pas avec quoi tu accèdes aux groupes de news,
probablement un navigateur web sur un serveur chez Giganews,
mais tous tes guillemets « " » se trouvent remplacés par la
séquence guillemet + e + point-virgule « "e; ».

Du coup c'est assez difficile à lire, alors j'ai traduit ce
qui était indispensable :

> Dans mon code, "d" permet de récupérer la distance.
> "h" les heures, "m" les minutes et "s" les secondes.
> 
> Il faudrait donc que cette fonction divise la distance "d" par le temps :
> "h" + "m" divisé par 60 + "s" divisé par 3600.
> 
> En gros v = d / (h+m+s)
> 
> v = vitesse moyenne en Km/h

À priori, si la distance est bien exprimée en km, il te
suffit d'écrire :
  v = d / (h + m/60 + s/3600)

Ceci est correct si les valeurs d, h, m et s sont déjà des nombres
et non des chaînes de caractères. Tu peux t'en assurer en écrivant
d'abord :
 d = +d; h = +h; m = +m; s = +s;

Ou bien tu peux écrire directement :
 v = (+d) / ((+h) + (+m)/60 + (+s)/3600)

Il y a sûrement des raccourcis possibles, mais parfois le plus simple
est le mieux.

Cordialement,
-- 
Olivier Miakinen

[toc] | [prev] | [next] | [standalone]


#2969

FromSAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid>
Date2016-02-25 18:27 +0100
Message-ID<56cf3969$0$3037$426a74cc@news.free.fr>
In reply to#2962
Le 08/02/16 12:33, Olivier Miakinen a écrit :
>
> À priori, si la distance est bien exprimée en km, il te
> suffit d'écrire :
>    v = d / (h + m/60 + s/3600)
>
> Ceci est correct si les valeurs d, h, m et s sont déjà des nombres
> et non des chaînes de caractères. Tu peux t'en assurer en écrivant
> d'abord :
>   d = +d; h = +h; m = +m; s = +s;
>
> Ou bien tu peux écrire directement :
>   v = (+d) / ((+h) + (+m)/60 + (+s)/3600)
>
> Il y a sûrement des raccourcis possibles, mais parfois le plus simple
> est le mieux.

Il me semble que dès qu'on fait intervenir une multiplication, une 
division ou une soustraction, le JS "sait" qu'on lui demande de calculer 
même si un des chosemachins semble n'être pas un nombre

Le nécessaire et suffisant devient donc :
	var v = d / (h*1 + m/60 + s/3600);
où h, m et s peuvent être directement les valeurs des champs de texte

verif :
	alert('280'/('2'*1+'10'/60 + '30'/3600))


Cordialement,
-- 
Stéphane Moriaux avec/with iMac-intel 27" & Mac OS X 10.6.8

[toc] | [prev] | [next] | [standalone]


#2970

FromOlivier Miakinen <om+news@miakinen.net>
Date2016-02-29 00:01 +0100
Message-ID<navu8m$1o2u$1@cabale.usenet-fr.net>
In reply to#2969
Le 25/02/2016 18:27, SAM m'a répondu :

Ô joie ! Stéphane, ça me fait très plaisir de te revoir ici après
(il me semble) plusieurs mois d'absence. J'espère qu'il ne t'est
rien arrivé de fâcheux depuis tout ce temps.

> [...]
>>
>> À priori, si la distance est bien exprimée en km, il te
>> suffit d'écrire :
>>    v = d / (h + m/60 + s/3600)
>>
>> [...]
>>   v = (+d) / ((+h) + (+m)/60 + (+s)/3600)
> 
> Il me semble que dès qu'on fait intervenir une multiplication, une 
> division ou une soustraction, le JS "sait" qu'on lui demande de calculer 
> même si un des chosemachins semble n'être pas un nombre
> 
> Le nécessaire et suffisant devient donc :
> 	var v = d / (h*1 + m/60 + s/3600);
> où h, m et s peuvent être directement les valeurs des champs de texte
> 
> verif :
> 	alert('280'/('2'*1+'10'/60 + '30'/3600))

Excellent. Et encore merci !

-- 
Olivier Miakinen

[toc] | [prev] | [next] | [standalone]


#2971

FromSAM <stephanemoriaux.NoAdmin@wanadoo.fr.invalid>
Date2016-02-29 19:03 +0100
Message-ID<56d487df$0$19774$426a74cc@news.free.fr>
In reply to#2970
Le 29/02/16 00:01, Olivier Miakinen a écrit :
> Le 25/02/2016 18:27, SAM m'a répondu :
>
> Ô joie ! Stéphane, ça me fait très plaisir de te revoir ici après
> (il me semble) plusieurs mois d'absence. J'espère qu'il ne t'est
> rien arrivé de fâcheux depuis tout ce temps.

La baisse de fréquence générale sur les NGs me les a fait un peu abandonner.
J'évite aussi les sujets qui ne sont pas du JavaScript mais des 
particularismes de "biblis".
Et puis ... j'utilise + la tablette que l'ordi.
(pas de NG et surtout pas pratique pour tapoter du texte)



Cordialement,
-- 
Stéphane Moriaux avec/with iMac-intel 27" & Mac OS X 10.6.8

[toc] | [prev] | [standalone]


Back to top | Article view | fr.comp.lang.javascript


csiph-web