Rechercher
Résultats par :
Recherche avancée
Mots-clés

sleep  reset  

Qui est en ligne ?
Il y a en tout 3 utilisateurs en ligne :: 0 Enregistré, 0 Invisible et 3 Invités

Aucun

Voir toute la liste


Partagez
Voir le sujet précédentAller en basVoir le sujet suivant
Member
Messages : 83
Date d'inscription : 2014-07-12
Voir le profil de l'utilisateur

Amélioration de "ou" et "et" utilisable avec des variables

le Mon 8 May - 20:16
Amélioration des opérateurs comme "ou" et "et" pour être utilisable avec des variables :

Bonjour à tous,

Cela fait un certain temps que je ne suis pas mis à Linotte, alors j'ai décidé d'adapter un TP en Python :

https://openclassrooms.com/courses/apprenez-a-programmer-en-python/tp-tous-au-zcasino

Je précise tout de suite que je ne connais pas ce langage... mais bon, on peut toujours s'en inspirer... Wink

Mais voilà, je me suis aperçu alors que les opérateurs comme "ou" et "et" semblent limités au mathématique, et ne peuvent donc pas être utilisés avec des variables...

Code:
/*
Spécification : 2.6.1
Auteur : XP_Rico
Pour servir de TP, il s'agit d'un jeu de roulette adapté code du ZCasino
https://openclassrooms.com/courses/apprenez-a-programmer-en-python/tp-tous-au-zcasino
*/
globale
 argent valant 1000 //On a 1000 € au début du jeu

principale :
 continuer_partie est un drapeau valant faux
 nombre_misé est un nombre
 mise est un nombre
 numero_gagnant est un nombre
 sortie est un texte valant "
Souhaitez-vous rejouer au casino (o/n) ? "
 joueur est un texte valant ""
 début
 Affiche "Vous vous installez à la table de roulette avec "+ argent +"€."
 tant que continuer_partie = faux, lis
 Affiche "
Tapez le nombre sur lequel vous voulez miser (entre 0 et 49) : "
 Demande nombre_misé
 Si nombre_misé > 49, affiche "C'est trop !"
 Sinon si nombre_misé < 0, affiche "C'est un nombre négatif !?"
 sinon continuer_partie prend vrai
 ferme
 tant que continuer_partie = vrai, lis
 Affiche "
Tapez le montant de la mise : "
 Demande mise
 si mise <= 0, affiche "La mise saisie est négative ou nulle."
 si mise > argent, affiche "Vous ne pouvez pas miser autant, car vous n'avez que " + argent + "€ en Banque"
 sinon continuer_partie = faux
 ferme
 numero_gagnant = hasard(50)
 Affiche "
La roulette tourne... ... et s'arrête sur le numéro : " + numero_gagnant
 si numero_gagnant == nombre_misé, lis
 affiche "
Félicitations ! Vous obtenez " + mise * 3 + "€ !"
 argent prend argent + mise * 3
 Affiche "
Vous avez maintenant " + argent + "€ en Banque"
 ferme
 sinon lis
 affiche "
Désolé l'ami, c'est pas pour cette fois. Vous perdez votre mise."
 argent prend argent - mise
 Affiche "
Vous avez maintenant " + argent + "€ en Banque"
 ferme
 questionne joueur sur sortie
 si joueur == "n", affiche "Vous quittez le casino avec votre argent."
/*
Code alternatif non fonctionnel : si joueur == "o" ou joueur == "O", affiche "Vous quittez le casino avec votre argent."
Ce qui nous donne : Ligne 54, La valeur est incorrecte : Opération mathématique 'ou' interdite avec joueur
*/
 si joueur == "o", va vers Principale

Je propose donc d'améliorer Linotte en lui permettant de comprendre des lignes de code comme :

Code:
si joueur == "o" ou joueur == "O", affiche "Vous quittez le casino avec votre argent."


Voilà, c'est tout pour aujourd'hui Smile
avatar
Site Admin
Messages : 1029
Date d'inscription : 2011-11-03
Voir le profil de l'utilisateur

Re: Amélioration de "ou" et "et" utilisable avec des variables

le Fri 12 May - 23:41
Sympa ce programme.

ça devrait marcher ça :

Code:
si (joueur == "o") ou (joueur == "O"), affiche "Vous quittez le casino avec votre argent."
Member
Messages : 83
Date d'inscription : 2014-07-12
Voir le profil de l'utilisateur

Re: Amélioration de "ou" et "et" utilisable avec des variables

le Sat 13 May - 5:01
Super ça fonctionne parfaitement...

comme quoi, il n'y avait rien à améliorer lol!

Autant pour moi donc... Smile
Contenu sponsorisé

Re: Amélioration de "ou" et "et" utilisable avec des variables

Voir le sujet précédentRevenir en hautVoir le sujet suivant
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum