Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2484 connectés 

  FORUM HardWare.fr
  Programmation
  Python

  Probleme de lotto

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Probleme de lotto

n°1659348
alpinestar​python
Posté le 17-12-2007 à 13:57:57  profilanswer
 

Bonjour a tous et a toutes...Pour mon examen de noel j'ai eu droit a la programmation d'un lotto.Il consiste a encoder des tirage, date, numéros 1 2 3 ... jusque la ca va c'est apres que j'ai un petit probleme.Le programme doit me donner combien de fois les numeros de 1à 42 sont sortis.Ma fonction fonctionne mis apart qu'il me donne les numéros sorti et non les chiffres. ex: j'encode 1 42 34 23 2 6 8 il me dis que le numeros 1 est sorti une fois ok le numeros 2 est sorti 3 fois pas ok le numero 3 est sorti 2 fois et ainsi dessuite il devrais me donner 1 sorti 1 fois,2 sorti 1 fois,6 une fois,8 une fois,23 une fois ect...Le tirage de debut je le met dans une liste grace au liste.append(numero) et j'ecris tout sa grace au of.write(str(liste)) comment faire pour qu'il lise les deux nombre en meme temps et non séparement???Si quelqu'un peut m'aider se serait génial...Merci

mood
Publicité
Posté le 17-12-2007 à 13:57:57  profilanswer
 

n°1659359
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 17-12-2007 à 14:07:11  profilanswer
 

mais comment tu te débrouilles pour faire ça ? [:mlc]
poste ton code pour voir

n°1659368
gzii
court-circuit
Posté le 17-12-2007 à 14:34:25  profilanswer
 

il compte le nombre de fois où il trouve 2 dans "1 42 34 23 2 6 8" ???

n°1659371
alpinestar​python
Posté le 17-12-2007 à 14:39:11  profilanswer
 

#-*-coding:Latin-1-*-
from random import randrange
nomF=raw_input('Nom du fichier a traiter : ')
 
def EncoderTirage():
 "Encodage du tirage"
 ofi=open(nomF,"a" )
 liste=[]
 while 1:
  while 1:
   numeros=['1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18','19','20','21','22','23','24','25','26','27','28','29','30','31','32','33','34','35','36','37','38','39','40','41','42']
   date=raw_input("Encoder une date(j/m/a): " )
   if date=="":
    break
   print "Encoder 6 numeros et un numero complementaire(1 a 42):"
   num1=raw_input("Entrez le 1ere numero: " )
   if num1 in numeros:
    liste.append(num1)
   else:
    print 'recommencer en entrant des chiffre de 1 a 42'
    num1=raw_input("Entrez le 1ere numero: " )
    liste.append(num1)
   num2=raw_input("Entrez le 2eme numeros: " )
   if num2 in numeros:
    liste.append(num2)
   else:
    print 'recommencer en entrant des chiffre de 1 a 42'
    num2=raw_input("Entrez le 2eme numeros: " )
    liste.append(num2)
   num3=raw_input("Entrez le 3eme numeros: " )
   if num3 in numeros:
    liste.append(num3)
   else:
    print 'recommencer en entrant des chiffre de 1 a 42'
    num3=raw_input("Entrez le 3eme numeros: " )
    liste.append(num3)
   num4=raw_input("Entrez le 4eme numeros: " )
   if num4 in numeros:
    liste.append(num4)
   else:
    print 'recommencer en entrant des chiffre de 1 a 42'
    num4=raw_input("Entrez le 4eme numeros: " )
    liste.append(num4)
   num5=raw_input("Entrez le 5eme numeros: " )
   if num5 in numeros:
    liste.append(num5)
   else:
    print 'recommencer en entrant des chiffre de 1 a 42'
    num5=raw_input("Entrez le 5eme numeros: " )
    liste.append(num5)
   num6=raw_input("Entrez le 6eme numeros: " )
   if num6 in numeros:
    liste.append(num6)
   else:
    print 'recommencer en entrant des chiffre de 1 a 42'
    num6=raw_input("Entrez le 6eme numeros: " )
    liste.append(num6)
   numC=raw_input("Entrez le numero complementaire: " )
   if numC in numeros:
    liste.append(numC)
   else:
    print 'recommencer en entrant des chiffre de 1 a 42'
    numC=raw_input("Entrez le numero complementaire: " )
    liste.append(numC)
   rep=raw_input("OK pour sauver? Oui(o),Non(n):" )
   if rep=="o":
    ofi.write("Date:"+date+"~~~"+"Numeros:"+str(liste)+"\n" )
   if rep=='n':
    break
  if date=="":
   break
  ofi.close()
   
def ObtenirTirage():
 ofi=open("tampon","a" )
 cpt=0
 nbr=['6','7','8','9','10','11','12','13','14','15','16','17','18','19','20']
 while 1:
  nbrNum=raw_input("Entrez le nombre de numeros que vous voulez (6 a 20): " )
  if nbrNum=='':
   break
  if nbrNum in nbr:
   nbrSer=raw_input("Entrez le nombre de serie(s) que vous voulez: " )
   if nbrSer=='':
    break
   while cpt<float(nbrSer):
    date=raw_input("Encodez une date(j/m/a): " )
    if date=="":
     break
    cpt1=0
    tirage=[]
    while cpt1<float(nbrNum):
     tir=randrange(1,43)
     tirage.append(tir)
     cpt1=cpt1+1
    ofi.write("Date:"+date+"~~~"+"Numeros:"+str(tirage)+"\n" )
    cpt=cpt+1
  else:
   print 'recommencer en entrant des chifres de 6 a 20'
 
def ConsTirageChoisi():
 ofi=open(nomF,"r" )
 while 1:
  Tirage=ofi.readline()
  if Tirage=="":
   break
  print Tirage
 
def AfficherTout():
 ofi=open("tampon","r" )
 while 1:
  Tirage=ofi.read()
  if Tirage=="":
   break
  print Tirage
 
def AfficherSortie():
 print  "VOICI LES RESULTATS OBTENUS:"
 of2=open(nomF,"r" )
 ligne=of2.read()
 n=0
 while n<2:
  if n==0:
   nombre1,nombre2=1,22
  else:
   nombre1,nombre2=22,43
  print "les diff�rents numeros:",
  for i in range(nombre1,nombre2):
   print "%2g"%(i),
  print
  print "cbm de fois le num est:",
  for i in range(nombre1,nombre2):
   cpt=0
   for j in range(15,len(ligne)):
    if str(i) == ligne[j]:
     cpt=cpt+1
   print "%2g"%(cpt),
  print
  print
  n=n+1
 of2.close()
 
while 1:
 "Menu Principal"
 choix = raw_input('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°\n'
 'Entrez: \n' + \
 '"a" Encoder un tirage  \n' + \
 '"b" Obtenir un tirage  \n' +\
 '"c" Consulter les tirages \n'+\
 '"d" Sortir du programme \n'+\
 'Votre choix? \n'
 '°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°\n')
 if choix=="a":
  EncoderTirage()
 if choix=="b":
  ObtenirTirage()
 if choix=="c":
  while 1:
   "Menu Secondair"
   choix = raw_input('°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°\n'
   'Entrez: \n' + \
   '"a" Consulter le fichier contenant les tirages du lotto  \n' + \
   '"b" Consulter le fichier contenant vos tirages  \n' +\
   '"c" Revenir au menu principal \n'+\
   'Votre choix? \n'
   '°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°\n')
   if choix =="a":
    while 1:
     "Menu Secondair"
     choix=raw_input(
     '°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°\n'
     'Entrez: \n' + \
     '"a" Afficher tous les tirages  \n' + \
     '"b" Afficher le nombre de sorties des numeros \n' +\
     '"c" Revenir au menu precedent \n'+\
     'Votre choix? \n'
     '°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°\n')
     if choix=="a":
      AfficherTout()
     if choix=="b":
      AfficherSortie()
     if choix=="c":
      break
   if choix=="b":
    ConsTirageChoisi()
   if choix=="c":
    break
 if choix=="d":
  break

n°1659372
alpinestar​python
Posté le 17-12-2007 à 14:41:26  profilanswer
 

donc voila tous mon programme... la fonction AfficherSortie() affiche normalement le nombre de fois qu'un numeros a ete encoder dans la fonction encoder. Mais il ne compte pas les nombres de deux chiffre.Il les compte séparément. ex : 42 il compte un 4 et un 2

n°1659381
masklinn
í dag viðrar vel til loftárása
Posté le 17-12-2007 à 14:51:03  profilanswer
 

1. Utiliser une balise code pour avoir la coloration syntaxique, là c'est illisible
2. Apprendre à utiliser for pour faire des boucles au lieu d'écrire 6 fois la même chose
3. Apprendre à utiliser if/elif/else aussi
4. et le fait que les entiers ça existe
 
Pour commencer


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1659424
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 17-12-2007 à 15:39:33  profilanswer
 

[:daplopbot]


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Python

  Probleme de lotto

 

Sujets relatifs
Problème installation Oracle 10g sous Windows VistaProblème Event.observer
[problème] coder base 2 en base 10[C++] Problème d'allocation dynamique
[C#] Problème d'emulation sur Visual Studio (Windows CE 5.0)Problème avec un select
[c++][resolu]Problème de compilation.($résolu = 'ok') probleme avec FALSE et TRUE
Probleme sur la suite de conway en java !Problème de cache navigateur - iFrame
Plus de sujets relatifs à : Probleme de lotto


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR