aide programmation python
Répondre à la discussion
Affichage des résultats 1 à 30 sur 31

aide programmation python



Vue hybride

  1. #1
    invited0b2ef3b

    aide programmation python

    Bonjour à tous,
    Je commence tout juste à programmer à l'aide de Python. Je m'acharne depuis une heure sur un problème que je me suis posé:
    Soit 12 variables x1,x2,x3,...,x12 appartenant chacune à l'intevalle [0;9999]
    On a l'opération suivante:
    x1 + x2 + x3 + ... + x12
    Je ne veut pas un résultat numérique, je voudrais créer un programme qui nous donne toutes les possibilités qu'aurait la "tête" de l'addition (en tenant compte de l'ordre des variables).
    C'est en fait le début d'un programme que j'essaie de réaliser. Je vais réutiliser les valeurs numériques de chaques variables c'est pour cela que je n'ai pas besoin de valeur numérique suite à l'addition. J'ai pensé à utiliser la fonction randint() mais je veu être sur que toutes les possibilités soient présentes dans le programme.
    J'espère être assez clair cependant si vous avez des questions n'hésitez pas à m'envoyer des messages le faisant savoir.
    Merci de vos futures réponses
    Cordialement,
    Elek

  2. #2
    invite597d4991

    Re : aide programmation python

    J'avoue que je ne vois pas trop ce que sont les "possibilités de tête d'addition" tu peux donner un exemple?

  3. #3
    invited0b2ef3b

    Re : aide programmation python

    bonsoir overmind,par exemple:
    789+546+7+0+369+9999+7894+85+3 621+23+658+74
    ou
    0+2+3+4+89+7+6+2+0+698+47+984
    ou encore
    0+0+0+0+1+0+0+1+2+0+0+0
    J'espère avoir été assez clair...

  4. #4
    invite597d4991

    Re : aide programmation python

    Si tu veux juste 12 nombres aléatoires à additioner, tu peux faire:
    Liste = [randint(0,9999) for i in range(12)]
    Après tu peux les additionner:
    Liste[0] + ... +Liste[11]

    Leur donner des noms poétiques:
    x1 = Liste[0]
    ...
    x12 = Liste[11]

    Mais je ne vois pas trop le but de tout ça...

  5. A voir en vidéo sur Futura
  6. #5
    invited0b2ef3b

    Re : aide programmation python

    j'ai pensé à utiliser la fonction aléatoire mais je veu que toutes les opérations possibles passent au moins une fois
    au pire je peu t'expliquer ce que je veu faire comme programme mais je sais pas si je vais arriver à tout expliquer correctement et je sais qu'il est vrément complexe... dite moi si vous êtes intéressé
    merci pour votre aide

  7. #6
    invite597d4991

    Re : aide programmation python

    Tu te rend compte du temps que ça prend, si on respecte l'ordre il y a 9999^12 possibilités...
    998800659780049492080923920804 949780006599880001
    Déjà tu peux être sûr que tu retombera pas deux fois sur la même, et ensuite, si toutes les possbilités doivent passer, tu aura le temps de mourrir au moins 10^30 fois avant que ça se termine....
    A quoi ça sert ton truc?

  8. #7
    invited0b2ef3b

    Re : aide programmation python

    Voila je vais t'expliquer à quoi servirai mon programme:
    Je cherche une réponse au problème que j'ai posé ici:
    http://forums.futura-sciences.com/sh...highlight=Elek
    J'avais penser à utiliser les mathématiques pour trouver une solution mais en vain. C'est pourquoi j'ai penser que ma machine pourrait en trouver une grâce à un code source que j'aurais réaliser. Je débute tout juste dans la programmation informatique et c'est pour ça que je demande de l'aide.
    Cependant j'ai changer mon problème je voudrais qu'il y ai au moins un ingrédient en plus que les ingrédients du départ après différentes combinaisons de recettes.
    J'ai réaliser un schéma simplifié qu'aurait le programme (si il existe plus simple n'hésite pas à me le faire savoir). Inutile de me dire que le schéma n'a rien d'un travail rigoureux mais c'est pour m'éviter de t'embrouiller dans mes explications.
    Je sais qu'un tel programme fournirai une solution au bout d'un bon moment à l'ordinateur mais qu'est ce qui nous empêche d'essayer? Y aurait'il une méthode plus rapide de trouver une solution?

  9. #8
    invited0b2ef3b

    Re : aide programmation python

    oups j'ai oublié de donner l'image...
    voila encore merci pour votre aide
    Images attachées Images attachées  

  10. #9
    invite597d4991

    Re : aide programmation python

    En données:
    Si on a un dico qui contient ce qu'on veut:
    Kejeve ={
    "toto":3
    ".....": n
    ...
    }
    Et ce qui est dispo:
    Kejai = {
    "tata":5
    "....."
    ...
    }
    Avec une structure représentant les recettes:
    Map = {
    "tata" = [("toto",5/3), ("Frodon",42/3) ,...] #ceci est une recette...
    ...
    }
    On peut pendre un élément des trucs qu'on veut, passer par Map pour trouver de quoi on a besoin (on peut surcharger la méthode __getitem__ de Map pour actualiser la liste des recettes utilisées)
    Pour chaque Item trouvé dans Map, on vérifie si il est dispo ou non, si oui on le vire si non on l'ajoute à Kejeve.
    Ensuite on prend un autre élément de Kejeve (méthode popitem) et on recommence.
    Ça, ça va marcher si le graphe des recettes ne fait pas de boucles... ce qui serait bizzare pour des recettes mais bon...
    Il faut aussi unicité de la recette pour un produit.
    grr ces smileys au millieu du code...

  11. #10
    invited0b2ef3b

    Re : aide programmation python

    merci beaucoup overmind mais je vais être franc avec toi je n'ai rien compris... Ce n'est pas de mon niveau. Alors si j'ai bien compris il nous est possible de créer ce programme. Je vais travailler ce que tu m'as donné mais serait gentil de me donner un petit coup de pouce
    Merci à toi
    Elek

  12. #11
    invite597d4991

    Re : aide programmation python

    Je sais pas trop quel est ton niveau en python, mais le problème en lui même est un parcours d'arbre en gros.
    J'ai reregardé "l'énoncé", plusieurs équations donnent la même chose, donc mon algo ne marche pas.
    Ceci dit il pourrait marcher un le modifiant un peu, mais je crois qu'il est vraiment temps de te demander ce que tu as en entrée et ce que tu dois avoir en sortie.

    Fixe aussi le formalisme pour les équations, les produits, etc, bref les données quoi (listes, dicos, voir chaines ou variables).
    Une fois le problème clairement posé on a des chances de trouver une solution adaptée.

  13. #12
    invited0b2ef3b

    Re : aide programmation python

    Bonsoir j'est réalisé un programme qui serait en mesure de réoudre le problème. Cela dit je n'arrive pas à le faire fonctionner...Si quelqu'un pourrait m'aider ça serait bien gentil!
    Pour les ingrédients et les produits des recettes j'ai utilisé des listes. J'y ai respecté un ordre,chaque emplacement d'une liste correspond à un ingrédient.
    Je pense avoir règlé l'istoire des combinaisons avec la fonction randint au début des assignations.
    Merci pour vos futures réponses!
    Elek
    Fichiers attachés Fichiers attachés

  14. #13
    invite597d4991

    Re : aide programmation python

    Ohlala... Je ne sais pas por le fond, mais mettre 30 'if' à la suite est certainement contournable....

    Exemple: mettre les listes prodX et rX dans un dictionnaire. Comme ça tu peut faire une affectation à la place de tes 25 'if' du début.
    Ce qui donne:
    Code:
    hasr=R["r%i"%ty]
    hasprod=Prod["prod%i"%ty]
    C'est tout de même beaucoup plus clair...

    Ensuite, l'encoding "projet recettes" est certainement très bien , mais pas très répandu....

    Enfin, tu as une boucle infinie dans ton programme, et je ne vois rien pour l'arrêter...

  15. #14
    invited0b2ef3b

    Re : aide programmation python

    En fait le problème est que le programme tourne en boucle dans la deuxième "boucle"!! Que faut-il faire pour que le programme revienne à la première boucle lorsque les instructions demandées par les fonctions if ne sont pas respectées?
    Merci de votre aide!
    Elek

  16. #15
    invite597d4991

    Re : aide programmation python

    Ben, soit tu mets un while avec une condition un peu plus développée et une variable qui t'indique si oui ou non la série de tests est ok, soit tu passe par un 'break'.
    En tout cas la première boucle dépend d'une variable qui n'est jamais affectée par la suite, c'est caca.

Discussions similaires

  1. aide en programmation en c
    Par invite7670cc44 dans le forum Électronique
    Réponses: 0
    Dernier message: 12/06/2007, 16h45
  2. aide programmation température pic16f877
    Par invite03ccaa53 dans le forum Électronique
    Réponses: 3
    Dernier message: 14/12/2006, 10h11
  3. Aide Python
    Par invitec93cd9c4 dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 23/10/2006, 12h09
  4. Aide à la programmation des PIC
    Par invite3a1051d7 dans le forum Électronique
    Réponses: 0
    Dernier message: 06/07/2005, 17h36
  5. Aide pour programmation VBA
    Par invite588da7a7 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 08/07/2004, 22h55
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...