Utilisation d'un opérateur pour valider un succès
Résolu
patburn_911
-
patburn_911 -
patburn_911 -
Bonjour, Voici mon problème:
if ($operateur == "+"):
$succes = ($reponse == $nombre1 + $nombre2) ;
elseif ($operateur == "-"):
$succes = ($reponse == $nombre1 - $nombre2) ;
else:
$succes = ($reponse == $nombre1 * $nombre2) ;
endif;
La situation est la suivante: J'ai une première page qui génère au hasard 2 nombres et un opérateur, soit +, - ou *. Cette page fonctionne. La deuxième page entre en jeu quand on entre une réponse et qu'on veut la valider. Si l'opérateur était l'addition, ça fonctionne on me dit que j'ai la bonne réponse. Si c'est un des deux autres opérateurs, même avec la bonne réponse on m'affiche le message en cas de mauvaise réponse. Mon code est-il mal écrit pour réussir à faire comprendre si j'ai soit une addition, une soustraction ou une multiplication?
Merci d'avance =)
if ($operateur == "+"):
$succes = ($reponse == $nombre1 + $nombre2) ;
elseif ($operateur == "-"):
$succes = ($reponse == $nombre1 - $nombre2) ;
else:
$succes = ($reponse == $nombre1 * $nombre2) ;
endif;
La situation est la suivante: J'ai une première page qui génère au hasard 2 nombres et un opérateur, soit +, - ou *. Cette page fonctionne. La deuxième page entre en jeu quand on entre une réponse et qu'on veut la valider. Si l'opérateur était l'addition, ça fonctionne on me dit que j'ai la bonne réponse. Si c'est un des deux autres opérateurs, même avec la bonne réponse on m'affiche le message en cas de mauvaise réponse. Mon code est-il mal écrit pour réussir à faire comprendre si j'ai soit une addition, une soustraction ou une multiplication?
Merci d'avance =)
A voir également:
- Utilisation d'un opérateur pour valider un succès
- Utilisation chromecast - Guide
- Télécharger gratuitement notice d'utilisation - Guide
- Télécharger opera mini pour pc - Télécharger - Navigateurs
- Opérateur de réseau mobile - Guide
- 0668 quel opérateur ✓ - Forum Opérateurs & Réseaux mobiles
3 réponses
salut
je suis pas sur d'avoir compris
ce code c'est ta 2eme page ?
déja le double == me choque dans ce cas la par exemple
$succes = ($reponse == $nombre1 + $nombre2) ;
tu peux donner plus d'infos stp ?
est ce que $reponse est déclaré quelque part ??
je suis pas sur d'avoir compris
ce code c'est ta 2eme page ?
déja le double == me choque dans ce cas la par exemple
$succes = ($reponse == $nombre1 + $nombre2) ;
tu peux donner plus d'infos stp ?
est ce que $reponse est déclaré quelque part ??
Désolé je vais préciser je voulais pas faire trop long pour pas décourager les lecteurs mais voici les 2 pages:
(page index, celle qui s'affiche en premier avant la validation d'une réponse)
$indiceoperateur = mt_rand(OP_MIN, OP_MAX);
if ($indiceoperateur < 3) :
$operateur = '+';
elseif ($indiceoperateur > 4) :
$operateur = '-';
else :
$operateur = '*';
endif ;
if ($operateur == '+') :
$nombre1 = mt_rand(VALEUR_MIN_ADD, VALEUR_MAX_ADD) ;
$nombre2 = mt_rand(VALEUR_MIN_ADD, VALEUR_MAX_ADD) ;
elseif ($operateur == '-') :
$nombre1 = mt_rand(VALEUR_MIN_SOUS, VALEUR_MAX_SOUS) ;
$nombre2 = mt_rand(VALEUR_MIN_SOUS, $nombre1) ;
else :
$nombre1 = mt_rand(VALEUR_MIN_MULT, VALEUR_MAX_MULT) ;
$nombre2 = mt_rand(VALEUR_MIN_MULT, VALEUR_MAX_MULT) ;
endif;
setcookie( 'OPERATEUR', $operateur ) ;
setcookie( 'NOMBRE1', $nombre1 ) ;
setcookie( 'NOMBRE2', $nombre2 ) ;
?>
<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title><?= TITRE ?></title>
</head>
<body>
<h1><?= TITRE ?></h1>
<p>Si vous voulez gagner mon respect, trouvez la bonne réponse par vous-même</p>
<p> <?php echo $nombre1 , $operateur , $nombre2 ?> </p>
<form action="essai.php" method="POST"><p>
<input type="number" name="REPONSE" required autofocus>
<input type="submit" value="Allez!">
</p></form>
</body>
</html>
(la deuxième page)
<?php
require_once 'common.php' ;
require_once 'config.php' ;
require_args("OPERATEUR", "NOMBRE1", "NOMBRE2", "REPONSE");
$reponse = intval($_REQUEST["REPONSE"]) ;
$operateur = intval($_REQUEST["OPERATEUR"]) ;
$nombre1 = intval($_REQUEST["NOMBRE1"]) ;
$nombre2 = intval($_REQUEST["NOMBRE2"]);
$indiceoperateur = mt_rand(OP_MIN, OP_MAX);
if ($operateur == '+'):
$succes = ($reponse == $nombre1 + $nombre2) ;
elseif ($operateur == '-'):
$succes = ($reponse == $nombre1 - $nombre2) ;
else:
$succes = ($reponse == $nombre1 * $nombre2) ;
endif;
$peut_abandonner = (!$succes) ;
?>
<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title><?= TITRE ?></title>
</head>
<body>
<h1><?= TITRE ?></h1>
<?php if ($succes): ?>
<p>BRAVO! Vous avez trouvé la bonne réponse.</p>
<form action="."><p>
<input type="submit" value="Rejouer" autofocus>
</p></form>
<?php else: ?>
<p>Ce n'est pas la bonne réponse.</p>
<p> <?php echo $nombre1, $operateur, $nombre2 ?> </p>
<form action="essai.php" method="POST"><p>
<input type="number" name="REPONSE" required autofocus>
<input type="submit" value="Allez!">
</p></form>
<?php if ($peut_abandonner): ?>
<form action="abandon.php" method="POST"><p>
J'en ai marre...<br>
<input type="submit" value="Je donne ma langue au chat!">
</p></form>
<?php endif; ?>
<?php endif; ?>
</body>
</html>
J'ai enlevé ce que je ne croyais pas essentiel, comme une page contenant les constantes pour choisir au hasard les nombres et opérateurs et une page abandon qui s'affiche quand on clique sur le bouton "je donne ma langue au chat!"
(page index, celle qui s'affiche en premier avant la validation d'une réponse)
$indiceoperateur = mt_rand(OP_MIN, OP_MAX);
if ($indiceoperateur < 3) :
$operateur = '+';
elseif ($indiceoperateur > 4) :
$operateur = '-';
else :
$operateur = '*';
endif ;
if ($operateur == '+') :
$nombre1 = mt_rand(VALEUR_MIN_ADD, VALEUR_MAX_ADD) ;
$nombre2 = mt_rand(VALEUR_MIN_ADD, VALEUR_MAX_ADD) ;
elseif ($operateur == '-') :
$nombre1 = mt_rand(VALEUR_MIN_SOUS, VALEUR_MAX_SOUS) ;
$nombre2 = mt_rand(VALEUR_MIN_SOUS, $nombre1) ;
else :
$nombre1 = mt_rand(VALEUR_MIN_MULT, VALEUR_MAX_MULT) ;
$nombre2 = mt_rand(VALEUR_MIN_MULT, VALEUR_MAX_MULT) ;
endif;
setcookie( 'OPERATEUR', $operateur ) ;
setcookie( 'NOMBRE1', $nombre1 ) ;
setcookie( 'NOMBRE2', $nombre2 ) ;
?>
<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title><?= TITRE ?></title>
</head>
<body>
<h1><?= TITRE ?></h1>
<p>Si vous voulez gagner mon respect, trouvez la bonne réponse par vous-même</p>
<p> <?php echo $nombre1 , $operateur , $nombre2 ?> </p>
<form action="essai.php" method="POST"><p>
<input type="number" name="REPONSE" required autofocus>
<input type="submit" value="Allez!">
</p></form>
</body>
</html>
(la deuxième page)
<?php
require_once 'common.php' ;
require_once 'config.php' ;
require_args("OPERATEUR", "NOMBRE1", "NOMBRE2", "REPONSE");
$reponse = intval($_REQUEST["REPONSE"]) ;
$operateur = intval($_REQUEST["OPERATEUR"]) ;
$nombre1 = intval($_REQUEST["NOMBRE1"]) ;
$nombre2 = intval($_REQUEST["NOMBRE2"]);
$indiceoperateur = mt_rand(OP_MIN, OP_MAX);
if ($operateur == '+'):
$succes = ($reponse == $nombre1 + $nombre2) ;
elseif ($operateur == '-'):
$succes = ($reponse == $nombre1 - $nombre2) ;
else:
$succes = ($reponse == $nombre1 * $nombre2) ;
endif;
$peut_abandonner = (!$succes) ;
?>
<!doctype html>
<html lang="fr">
<head>
<meta charset="utf-8">
<title><?= TITRE ?></title>
</head>
<body>
<h1><?= TITRE ?></h1>
<?php if ($succes): ?>
<p>BRAVO! Vous avez trouvé la bonne réponse.</p>
<form action="."><p>
<input type="submit" value="Rejouer" autofocus>
</p></form>
<?php else: ?>
<p>Ce n'est pas la bonne réponse.</p>
<p> <?php echo $nombre1, $operateur, $nombre2 ?> </p>
<form action="essai.php" method="POST"><p>
<input type="number" name="REPONSE" required autofocus>
<input type="submit" value="Allez!">
</p></form>
<?php if ($peut_abandonner): ?>
<form action="abandon.php" method="POST"><p>
J'en ai marre...<br>
<input type="submit" value="Je donne ma langue au chat!">
</p></form>
<?php endif; ?>
<?php endif; ?>
</body>
</html>
J'ai enlevé ce que je ne croyais pas essentiel, comme une page contenant les constantes pour choisir au hasard les nombres et opérateurs et une page abandon qui s'affiche quand on clique sur le bouton "je donne ma langue au chat!"