begin process at 2012 05 24 17:05:37
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Python

 > 

Divers

 > 

Débutant(e)

 > 

addition et multiplication de vecteur


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

addition et multiplication de vecteur

mardi 4 novembre 2008 à 18:09:18 | addition et multiplication de vecteur

titou_hello

Bonjour,
   je debute aujourd'hui en python et je m'essaie a un petit programme de maths.
101vector est un petit projet pour le calcul vectoriel dans une dimension 'n', les coordonees de vecteurs sont aleatoires et depende de la dimension.

voici ou j'en suis, le code ne me met plus d'erreur, s'execute mais j'ai du oublier quelque chose, ca n'a pas l'air de passer par le main. :(

Voici donc mon code:
 [code]                    
#!/usr/bin/python

##########################
## beneva_a@epitech.net  |
##                       |
##   :: 101vector ::     |
## -----------------------

import sys,re,os,pwd,random
os.system('reset')

class calcul:
    def random(self):
        random, randint(-9,9)
       
    def addition(self, dim):
        x = 0
    # On ajoute n fois des coordonnees aleatoires
    # dans une liste de la taille de la dimension
        while x <= dim:
            a_list[x] = self.random
            x = x + 1
        x = 0
        while x <= dim:
            b_list[x] = self.random
            x = x + 1
        x = 0
    # On ajoute A a B
        while x <= dim:
            res_list[x] = a_list[x] + b_list[x]
            x = x + 1
    # On imprime les listes
        print "Valeur de A:     |", a_list
        print "Valeur de B:     |", b_list
        print "Valeur de A + B: |", res_list
           
    def multiplication(self, dim):
        x = 0
    # On ajoute n fois des coordonnees aleatoires
    # dans une liste de la taille de la dimension
        while x <= dim:
            a_list[x] = self.random
            x = x + 1
        x = 0
        while x <= dim:
            b_list[x] = self.random
            x = x + 1
        x = 0
    # On ajoute A a B
        while x <= dim:
            res_list[x] = a_list[x] * b_list[x]
            x = x + 1
    # On imprime les listes
        print "Valeur de A:     |", a_list
        print "Valeur de B:     |", b_list
        print "Valeur de A + B: |", res_list
   
    def help():
        print "Aide"
        print "USAGE: ./101vector [-commande] <dimension>"
        print "Liste des commandes:"
        print "     -addition           ->  addition de deux vecteurs aleatoires de dimension n"
        print "     -multiplication     ->  multiplication de deux vecteurs aleatoires de dimension n"
        print "Dimension: correspond a un nombre n"
        sys.exit()
               
    def main():
        print " ___________  ____                     __                 "
        print "/_   \   _  \/_   |__  __ ____   _____/  |_  ___________  "
        print " |   /  / \  \|   \  \/ // __ \_/ ___\   __\/  _ \_  __ \ " 
        print " |   \  \_/   \   |\   /\  ___/\  \___|  | (  <_> )  | \/ "
        print " |___|\_____  /___| \_/  \___  >\___  >__|  \____/|__|    "
        print "            \/               \/     \/                    "
        if len(sys.argv) == 1:
            print "USAGE: 101vector.py [-commande] <dimension>"
            sys.exit()
        calc = calcul()
        if '-addition' in sys.argv[1]:
            calc.addition(sys.argv[2])
        if '-multiplication' in sys.argv[1]:
            calc.multiplication(sys.argv[2])
        if '-help' in sys.argv[1]:
            help()

        if __name__ == "__main__":
            main()
                                       
[/code]                                      

.#BlaZed

mardi 4 novembre 2008 à 22:16:35 | Re : addition et multiplication de vecteur

titou_hello


Yououuu, j'ai regler un probleme!!
D'ou l'importance des tabs :)

Enfin bref, maintenant il affiche bien ce qu il faut sans argument, mais apres c'est autre chose ^^

Toujours a l'ecoute de conseil, je cherche ;)

.#BlaZed

mercredi 5 novembre 2008 à 18:03:12 | Re : addition et multiplication de vecteur

fred1599

Message d'erreur?


mercredi 5 novembre 2008 à 20:57:24 | Re : addition et multiplication de vecteur

titou_hello

Desole  a ce moment si il n'y en avait pas, maintenant j'ai ce message.

File "./101vector.py", line 92, in <module>
    main()
  File "./101vector.py", line 85, in main
    calc.addition(sys.argv[2])
  File "./101vector.py", line 25, in addition
    self.a_list[x] = self.random
AttributeError: calcul instance has no attribute 'a_list'

Si quelqu'un pouvait me faire un petit cours sur les tableaux ca serait cool :)

Mercii

.#BlaZed

jeudi 6 novembre 2008 à 18:06:52 | Re : addition et multiplication de vecteur

fred1599

Bonsoir,

Beaucoup d'erreurs, déjà s'occuper de :

def main():
        print " ___________  ____                     __                 "
        print "/_   \   _  \/_   |__  __ ____   _____/  |_  ___________  "
        print " |   /  / \  \|   \  \/ // __ \_/ ___\   __\/  _ \_  __ \ " 
        print " |   \  \_/   \   |\   /\  ___/\  \___|  | (  <_> )  | \/ "
        print " |___|\_____  /___| \_/  \___  >\___  >__|  \____/|__|    "
        print "            \/               \/     \/                    "
        if len(sys.argv) == 1:
            print "USAGE: 101vector.py [-commande] <dimension>"
            sys.exit()
        calc = calcul()
        if '-addition' in sys.argv[1]:
            calc.addition(sys.argv[2])
        if '-multiplication' in sys.argv[1]:
            calc.multiplication(sys.argv[2])
        if '-help' in sys.argv[1]:
            help()

        if __name__ == "__main__":
            main()

Transformer en :

if __name__ == "__main__":
    print " ___________  ____                     __                 "
    print "/_   \   _  \/_   |__  __ ____   _____/  |_  ___________  "
    print " |   /  / \  \|   \  \/ // __ \_/ ___\   __\/  _ \_  __ \ " 
    print " |   \  \_/   \   |\   /\  ___/\  \___|  | (  <_> )  | \/ "
    print " |___|\_____  /___| \_/  \___  >\___  >__|  \____/|__|    "
    print "            \/               \/     \/                    "
    if len(sys.argv) == 1:
        print "USAGE: 101vector.py [-commande] <dimension>"
        sys.exit()
        calc = calcul()
    if '-addition' in sys.argv[1]:
        calc.addition(sys.argv[2])
    if '-multiplication' in sys.argv[1]:
        calc.multiplication(sys.argv[2])
    if '-help' in sys.argv[1]:
        help()

Ensuite occupe toi des indentations

Pour le reste je ne comprend pas trop l'utilisation

Je me lance au cas où : python 101vector -addition 2     ????

Ou???


vendredi 7 novembre 2008 à 10:13:31 | Re : addition et multiplication de vecteur

titou_hello

La ligne de commande pour l'executer est: 

                ./101vector -addition 2

Cela fonctionne pour:  ./101vector.py (sans argument)   et   ./101vector.py -help

Pour le main c'est bon c'est changer, je viens de voir que j'attaque tout de suite avec une class mais est ce que c'est vraiment utile? ou de simple fonction suffirait elle?

Nouvelles erreurs:

Traceback (most recent call last):
  File "./101vector.py", line 85, in <module>
    calc.addition(sys.argv[2])
  File "./101vector.py", line 25, in addition
    self.a_list[x] = self.random
AttributeError: calcul instance has no attribute 'a_list'

Je vois ce que je peux faire :)

.#BlaZed

vendredi 7 novembre 2008 à 14:52:28 | Re : addition et multiplication de vecteur

fred1599

Réponse acceptée !
Non une classe est inutile en effet mais possible.

Cependant programmer en objet de suite me semble rapide. Pour démarrer vaut mieux s'habituer à trouver la solution la plus simple pour résoudre ton problème.
Celle que tu proposes me semble compliqué.

Au départ je te conseillerais de faire du calcul vectoriel seulement avec les additions et en 2 dimensions puis par la suite dans l'espace.

Bon courage
vendredi 7 novembre 2008 à 20:20:44 | Re : addition et multiplication de vecteur

titou_hello

C'est vrai c'est du rapide, j'ai pris le language un peu a la legere mais j'aimerais l'approfondir.
J'ai coder ce projet en C, il est a rendre dans une ou deux semaines, j'aurais peut etre le temps de le coder en python.

Merci encore pour ton temps, je reposterais surement, merci.

.#BlaZed

vendredi 7 novembre 2008 à 20:34:31 | Re : addition et multiplication de vecteur

fred1599

De rien n'hesite pas

A bientot




Cette discussion est classée dans : print, multiplication, list, addition, sys


Répondre à ce message

Sujets en rapport avec ce message

Liste le contenu d'un répertoire [ par MHI ] Le code suivant me génére un fichier vide, alors que mon répertoire contient bien un répertoire et 3 fichiers :import osimport dircachefic = open('Lis heklp serverSocket [ par Harvester_ ] Voila j'ai utliser un script du siteC'est un server socket qui marchait tres bien au debut(source)#!C:\Python23\python.exeimport SocketServerimport sy Comment lancer son application !!!!!!!!!! [ par steede ] Voila, j'ai écrit (pompé) une malheureuse app (extraite d'un exemple "simple" de wx) et j'aimerais la faire fonctionner !!!!ci dessous la ligne de la Comment ouvrir une page web? [ par tipro75 ] Comment peut-on ouvrir un fichier (text dans ce cas(format html dans ce cas)) sur internet exemple :je veut lire une page toute les 1 minute pour voir sys.exit() et raw_input() [ par jrbleboss ] Bonjour, Je vous explique mon problème : dans un thread j'ai un sys.exit() et dans le thread principal j'ai un raw_input() pour attendre l'appui d'en Python 3.0 [ par xeolin ] Que pensez vous de la version 3.0 de python ? De la modifiquation de la commande "print" ? Perso, moi je trouve que c'est une bonne chose MAIS pas p Comment Afficher les donnes d'une BD dans WXGRID ??? [ par medmst ] slt a tousmon probleme est .. comment afficher les donnees d'un bd dans WXGRID ???mon code-source est : pas d'erreur de compilation mé il n'affiche ri Récupérer argument d'une dll [ par liliputien2002 ] Bonjour,Je suis en train de développer une application python qui utilise une dll propriétaire. (a la base c'est du code C)Cette dll me permet d'inter impossible de compiler un programme! [ par Droopyshootagain ] Bonjour a tous Je suis débutant en prog et je débute avec python et java;Mon premier prog simple , j'ai réussi a le compiler mais le second ,a noter t fonction Print [ par tokhen ] Salut à tous et bonne année,Je viens de me mettre à Python.J'ai donc installé l'interpréteur IDLE.La commande print me fait le retour suivant :>>> pri


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,529 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales