débutant en java script...

moumoutus

Touriste
Voila je me lance dans le java script ( du à mes cours en fait ) et je trouve ça gégnial...( geek spotted i know ).

Maintenant j'aimerais savoir si des sites pour débutant ( bien fait ) existent. Comme je ne veux pas perdre de temps sur google pour trouver des pseudo site qui ne feront que m'embrouiller je préfère passer par les gamerziens qui comptent pas mal de gens assez callés;) .

Exemple simple, j'essaie de faire une petit page html avec l'application java script pour des formules mathématique simple.

Comme trouver x dans ax + b = O

je fait l'algorithme : donner a, donner b, calcul -b/a, réponse x

Je ferais comme cela :

a = prompt ('quelle est la valeur de a ?')
b = prompt ('quelle est la valeur de b ?')
calculer x ???
alert ('x')

enfin c'est du très très débutant hein ;)

Merci d'avance
 

Sicounet

Putride vermine
tu serais pas à Albert Jacquard avec Mr Vause? C'est bizarrement l'exercice de base qu'il nous a donné à faire :-D
 
1er
OP
moumoutus

moumoutus

Touriste
exact :D ( H1 )

Mais bon je trouve qu'il va BEAUCOUP trop lentement ( fin ça dépend des personnes mais j'apprends assez vite ;) ). Donc bon comme je compte passez plus de temps sur mes travaux photo et dessin j'essaie d'avancer deja en java...

pis donner un exercice sans expliquer comment traduire une fonction mathématique ... chaud quoi !!!
 

null

ose();
Pour la réponse à ta question :

a = prompt ('quelle est la valeur de a ?')
b = prompt ('quelle est la valeur de b ?')
var x = -b/a;
alert("x = " + x);
 
1er
OP
moumoutus

moumoutus

Touriste
merci nul, c'est donc le var que je n'avais pas car j'avais essayer ça :

alert ('ce site va vous résoudre l'équation ax+b=0')
a = prompt ('quelle est la valeur de a ?')
b = prompt ('quelle est la valeur de b ?')
x = prompt ( -b/a )
alert ( x )

edit : ah ben ça marche aussi :D
 
1er
OP
moumoutus

moumoutus

Touriste
bon je chipote un peu et essaye ça :

alert ('Ce script va vous résoudre les équations de type ax+b=0')
a = prompt ('quel est la valeur de a ?');
b = prompt ('quel est la valeur de b ?');
var y =(a+b);
alert ('y = ' + y);
var x =(10/y);
alert ('x = ' + x);

le problème c'est qu'au départ je ne trouvais pas une valeur cohérente. Or en faisant un alert sur y je remarque que quand j'assigne a = 3 et b = 2,y = 32...

null toujours là pour m'aider :D ?
 

eGm_

Gibon Blasé
tu fais un + et pas un *,

le plus + va concatener tes variables, alors que le fois * va les multiplier
 
1er
OP
moumoutus

moumoutus

Touriste
ben je veux les additioner ( l'alert du départ est du ptit truc avant donc à ne pas regarder :D )

J'essaye de trouver sur le net mais ils mettent que le + est par défaut assigner à la concatener et qu'il faut faire quelque chose avec un pastInt...

Donc je veux additioner les deux variable a et b ici :)

j'invite quiconque s'y connait en java script à me rajouter sur msn pour des aides futures si il à le temps ;)
 
Baah, pour faire un plus, à la barbare, tu fais un double - :D

-->

var y =a-(-b);

C'est peut être pas élégant blabla, mais bon.. :)
 
1er
OP
moumoutus

moumoutus

Touriste
rofl j'y avais même pas penser... le noob quoi :p

Vais test.
 

eGm_

Gibon Blasé
ben je veux les additioner ( l'alert du départ est du ptit truc avant donc à ne pas regarder :D )

J'essaye de trouver sur le net mais ils mettent que le + est par défaut assigner à la concatener et qu'il faut faire quelque chose avec un pastInt...

Donc je veux additioner les deux variable a et b ici :)

j'invite quiconque s'y connait en java script à me rajouter sur msn pour des aides futures si il à le temps ;)
lol ok pour l'addition.

Le problème viens du javascript, celui-ci interprète les nombres saisi dans un prompt comme un string et donc le '+' concatene les strings, c'est pour cela que tu obtiens 32.

alert ('Ce script va vous résoudre les équations de type ax+b=0')
var a = prompt('quel est la valeur de a ?');
var b = prompt('quel est la valeur de b ?');


var y = parseInt(a,10)+parseInt(b,10);
alert ('y = ' + y);
var x =(10/y);
alert ('x = ' + x);


N'oublie pas de toujours mettre 'var' quand tu déclare une variables, car cela va te jouer des tours en fonction des navigateurs.
 

Sicounet

Putride vermine
exact :D ( H1 )

Mais bon je trouve qu'il va BEAUCOUP trop lentement ( fin ça dépend des personnes mais j'apprends assez vite ;) ). Donc bon comme je compte passez plus de temps sur mes travaux photo et dessin j'essaie d'avancer deja en java...

pis donner un exercice sans expliquer comment traduire une fonction mathématique ... chaud quoi !!!
Je suis en H2 :cool: :D
 
1er
OP
moumoutus

moumoutus

Touriste
Merci EGM, c'est exactement ce que je cherchais :D

Donc pour résoudre le second degré j'ai fais ça :

<html>
<head>
<title> Premiere Page Web </title>
</head>
<body>
<script language="JavaScript">
a = prompt ('Quel est la valeur de a ?')
b = prompt ('Quel est la valeur de b ?')
c = prompt ('Quel est la valeur de c ?')
var d = Math.sqrt(b*b-4*a*c);
alert ('Valeur de la racine de delta : ' + d);
var x1 = -b-d;
var x11 = x1/2/a;
var x2 = parseInt(-b,10) + parseInt (d,10);
var x22 = x2/2/a;
alert ('première valeur de x : ' + x11);
alert ('deuxième valeur de x : ' + x22);
</script>
Et voila ;D
</body>
</html>

2-3 questions :

lorsque j'essaie de mettre des exposant en ^ ça ne marche pas ( b^2-4*a*c ) quesqui cloche ?
lorsque j'essaie de comprimer mes équation pour avoir moin de variable ça me fais aussi des erreurs numérique ( j'ai essayer : ((-b-d)/2a) prob au niveau des parenthèse et du 2a je pense, j'ai donc change en coupant et en faisant /a/2 car si je fais /2*a il garde l'ordre de calcul et me fais des faute...

10/2*5 =/= 10/(2*5)

y a des rêgles aux niveaux des exposants et parenthèse ?

P.S. : ben jsuis le gars maigrichon avec un casque audio qui est malade pour le moment à lunette ( oli ).
 
j'ai essayer : ((-b-d)/2a) prob au niveau des parenthèse et du 2a je pense, j'ai donc change en coupant et en faisant /a/2 car si je fais /2*a il garde l'ordre de calcul et me fais des faute...

10/2*5 =/= 10/(2*5)
Essaye / (2*a) ? 2a ça ne marchera pas tout seul .. :)
-->
((-b-d)/(2*a))
 

Tifox

ou pas
Oublie pas de vérifier la division par zero...
 
V

Voro01

ex membre
Le monde est petit ! En essayant de faire mon devoir de "logique et technique de programmation", je tombe sur ce post:-D
J'étais bien loin du compte moi par contre :pfiou:

<html>
<head>
<title> Calculatrice </title>
</head>
<body>
<script language="javascript">
valeura = prompt("Quelle est la valeur de a ?");
valeurb = prompt("Quelle est la valeur de b ?");
alert("La solution est :"Valeura*x+Valeurb=0);
</script>
</body>
</html>

Comme si le X allait tomber du ciel !
 
1er
OP
moumoutus

moumoutus

Touriste
en cherchant sur le net j'ai réussis à résoudre les équations du second degré ^^ ici j'essaie d'arranger quelque chose pour mettre comme seul valeur autoriser dans les champs des nombres. pasque on peut mettre des mots java s'en fou ia l'air :p. Aussi appliquer un if else sur le delta neg.

edit : bon ça marche pas et je comprends ( denouveau ) pas mon erreur :

<html>
<head>
<title> Calcul second degré </title>
</head>
<body>
<script language="JavaScript">
alert ('Ce programme résoud les équations du second degré')
a = prompt ('Quel est la valeur de a ?')
b = prompt ('Quel est la valeur de b ?')
c = prompt ('Quel est la valeur de c ?')
var d =(Math.pow(b,2)-4*a*c);
if (d>0) {alert('delta positif, 2 racines réelles')}
else if (d=0) {alert('delta nul, une racine réelle double')}
else if (d<0) {alert('delta négatif, pas de racine réelle')};{</script>}
var d1 = Math.sqrt(d)
alert ('Valeur de la racine de delta : ' + d1);
var x1 = -b-d1;
var x11 = x1/2/a;
var x2 = parseInt(-b,10) + parseInt (d1,10);
var x22 = x2/2/a;
alert ('première valeur de x : ' + x11);
alert ('deuxième valeur de x : ' + x22);
</script>
Et voila ;D
</body>
</html>
 

eGm_

Gibon Blasé
IsDouble(string)

pour la vérification si c'est un double ou pas qui est saisi.

Sinon pour éviter la saisie de lettres tu fais un do{ }while

un truc dans le genre

var a = 0;

var flag = 0;

do
{
a = PROMPT('dtc ?);
if(isDouble(a)){ flag=1; }
}while(flag !=1)


je ne sais pas si ca fonctionne, je n'ai pas testé, mais l'idée est là.
 
Haut