Vision du web. La réponse collaborative.

Gagner des Bitcoins.

Le HackerSpace Vision du web.
La réponse collaborative.
Le glider des Hackers.
Un symbole de rassemblement.
QWERTY.
Du clavier au terminal.
GNU / Linux Debian.
La distribution universelle.
GNU / Linux Ubuntu.
Linux pour les êtres humains.
GNU / Linux Arch.
Un Linux léger et flexible.
Nom de code Linux.
Documentaire FR.

Vous n´êtes pas identifié(e).

Nous sommes le mardi 20 novembre 2018. Il est .

Nous avons 176 invités et aucun membre en ligne

 
HackerSpace !
× Python.

Résoudre des calculs mathématique simples avec python

  • Zer00CooL
  • Portrait de Zer00CooL Auteur du sujet
  • Hors Ligne
  • Modérateur
  • Modérateur
  • Le zéro, ce "rien qui peut tout".
Plus d'informations
il y a 1 an 7 mois #2166 par Zer00CooL
Zer00CooL a créé le sujet : Résoudre des calculs mathématique simples avec python
Résoudre des calculs mathématique simples avec python
#!/usr/bin/env python
# -*- coding: utf8 -*-
class fr_num_capcha_resolve(object):
 
	def chif2num(self,string):
		convert=[['un',1],['deux',2],['trois',3],['quatre',4],['cinq',5],['six',6],['sept',7],['huit',8],['neuf',9],['zero','0'],['dix','10']]
		for each in convert:
			if each[0].replace('é','e')==string.lower().replace('é','e') or str(each[1])==string:
				return int(each[1])		
		return ''
 
	def answer_to(self,question):		
		op=0
		qs=question.split(' ')	
 
		for each in range(0,len(qs)):
			if qs[each]=="plus" or qs[each]=='+':
				self.operation_type= "addition"
				var1=self.chif2num(qs[each-1])
				var2=self.chif2num(qs[each+1])
				op=1
			if qs[each]=="moins" or qs[each]=='-':
				self.operation_type= "soustraction"
				var1=self.chif2num(qs[each-1])
				var2=self.chif2num(qs[each+1])
				op=-1
			if qs[each]=="multiplier" or qs[each]=="fois" or qs[each]=='x' or qs[each]=='*':
				self.operation_type= "multiplication"
				var1=self.chif2num(qs[each-1])
				if qs[each]=="multiplier" and qs[each+1].lower()=="par":
					var2=self.chif2num(qs[each+2])
				else:
					var2=self.chif2num(qs[each+1])
				op=2
			if qs[each]=="diviser" or qs[each]=='/':
				self.operation_type= "division"
				var1=self.chif2num(qs[each-1])
				if qs[each+1].lower()=="par":
					var2=self.chif2num(qs[each+2])
				else:
					var2=self.chif2num(qs[each+1])
				op=-2
 
		if op!=0:
			if op==-1 or op==1:
				return var1+(op*var2)
			if op==2:
				return var1*var2
			if op==-2:
				return var1/var2
 
	def __init__(self,question):
		#print(question)
		self.answer=self.answer_to(question)
 
print fr_num_capcha_resolve("Combien font huit diviser par 2").answer
 
###########QUELQUE EXEMPLE FONCTIONNEL##########
 
#Combien font 3 fois 5
#Combien font 6 diviser par 2
#Combien font 6 / 3 ?
#Quel est le resultat de 2 fois 8 ?
#Quel est le resultat de 2 fois 8 ?
#Combien font trois fois 5 ?
#Combien font 10 diviser par 5 ?
#Quel chiffre est egale à huit diviser par deux 
#Combien font 7 moins 2'
#huit moins 3 egale'
 
################################################

Peu utile en l'état mais ce code s'avère efficace pour démontrer la quasi nul utilité des captchas à base de calculs mathématique simples.


Source : codes-sources.commentcamarche.net/source/54573-solveur-de-ca...atique-basique-ecris-en-lettre

Contre le camp de la majorité silencieuse, j'ai choisi la minorité bavarde.
L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai.

Connexion ou Créer un compte pour participer à la conversation.

REMARQUE ! Ce site utilise des cookies et autres technologies similaires.

Si vous ne changez pas les paramètres de votre navigateur, vous êtes d'accord. En savoir plus

J'ai compris

En poursuivant votre navigation sur ce site, vous acceptez l’utilisation de Cookies pour vous proposer un accès membre personnalisé et réaliser des statistiques de visites.

Vision du web sur votre réseau social

Je ne suis ni athénien, ni grec, mais un citoyen du monde.
Socrate (470-399 avant Jésus-Christ)

Votre hébergement internet avec LWS.