Le python... Et ensuite ?

Démarré par Jerelink, 20 Juillet 2008 à 05:17

0 Membres et 1 Invité sur ce sujet

Voila, suite a tutoriel de Noxneo que j' ai trouvé pas mal j' ai décidé de me lancé dans ce fabuleux langage, le python. A la base sont tuto parle de panda 3d, seulement je suis raisonnable et je sais très bien que me lancé dans la 3d alors que je n' y connais rien a la prog c' est foncé droit dans le mur  :paf: . Alors je me suis posé des questions pour programmer un jeu en 2d, des questions qui m' empêche de continué a apprendre (je suis étrange de sais   :ninja:), donc je vient les posé ici étant donné qu' il y a des connaisseur  :mrgreen:
Quel support utilisé pour faire de la 2d, quel bibliothèque utilisé, ou encore, comment disposé le code :
    - Un gros bloc en .exe et paf j' ai mon jeu
    - Plusieurs fichier genre : ARPG puis dedans il y a la prog d' un arpg  :ninja:

Si vous ne me comprenez pas hésité pas a me le faire savoir  :mrgreen:
Merci et bonne soirée =)

Ta question c'est : je veux faire un jeux en 2D avec python mais j'utilise quelle bibliothèque ?

C'est ça ?  :)
Je t' lily.

Regex / Les ravages de linux
CitationDites, dans un CV, faut mettre si on préfère vim ou emacs ?
Dis papa comment on fait les bébé
[/table

En gros, c' est a peut prêt sa  ^^'

http://pysdl.sourceforge.net/


Mais tu as besoin d'une meilleure expérience avant de te lancer la dedans. Apprends en plus et fais des exercices pour te perfectionner. Si tu veux en faire trop trop tôt tu vas droit dans le mur. Faut prendre son temps.
Je t' lily.

Regex / Les ravages de linux
CitationDites, dans un CV, faut mettre si on préfère vim ou emacs ?
Dis papa comment on fait les bébé
[/table

Ca répond à la question sur la bibliothèque mais pas sur comment architecturer son code. Et là, je ne peux que te conseiller d'apprendre la POO (n'est-ce pas Nox ? ... Zut c'est vrai il n'est plus là :D) et la vérité apparaîtra devant toi.

Et bien sûr, comme l'a dit ce cher Mooglwy, t'exercer, encore et encore car ok tu connais un peu le Python maintenant mais on ne se lance pas à la légère dans la création d'un jeu.

Et bien merci pour ces reponse =p, je vais regardé sa, quand a la "POO" j' en avais brièvement entendue parlé mais je ne savaist pas exactement de quoi sa traité ^^ .

Pour la bibliothèque , j' ai essayer de téléchargé a partir de ton lien mais sa ne marche pas   :mellow:,   j' vais voir sa plutard, je vais dormir un peu (beaucoups ?) je suis resté devant cette becane rouillé toute la nuit  :ninja: =)

Je ne peux que te conseiller de t'entrainer beaucoup histoire de maitriser ce que tu fais. Et de n'avoir aucun doute sur ce que tu fais et pourquoi. Tu dois vraiment comprendre ce que tu fais et pourquoi.

Je t' lily.

Regex / Les ravages de linux
CitationDites, dans un CV, faut mettre si on préfère vim ou emacs ?
Dis papa comment on fait les bébé
[/table

Moi je serai toi, j'apprendrai en premier lieu les bases du C expliquées par m@teo sur le site du zéro  :

Lien : Clique ici nondidju

Comme ça non seulement tu connaitras bien les bases du C ( car c'est très bien expliqué )
mais ensuite, tu auras acquis une notion qui te permettra d'apprendre plus facilement d'autres langages...
Pour ce qui est de la POO, bah faut lire le tuto C++  :mrgreen:

Voilà ;) quoi qu'il en soit je te souhaite bon courage, et surtout : ne te décourage pas !

Le python est beaucoup mieux pour commencer un premier langage. Après il peut passer au C qui est plus bas niveau, c'est quand même très important de s'y connaitre bas niveau pour faire un jeu.

Quand tu sera a l'aise avec le python passe au C. Enfin c'est ce que je te conseil surtout si tu veux faire un jeu.

En passant je te donne des exo de C que tu peux faire en python aussi. Ils sont classé par niveau.

Exo-A
[spoiler]Pour vous exercer, vous pouvez programmer quelques exemple vus en TD d'algo.
- calcul du quotient et du reste avec seulement + et -
- calcul du pgcd  avec seulement + et -
- calcul du pgcd avec l'algorithme d'Euclide
- verifier si un nombre est parfait
  (n est parfait ssi la somme de ses diviseurs est 2n)
  puis recherche des nombres parfaits inferieurs a 15000


NB chaque fois que possible, le traitement doit etre fait par une fonction
   la fonction "main" ne s'occupant que des entrees et des sorties.

Autres exercices

1/ -Ecrire une procedure affichant un triangle d'etoiles de taille n
   -Ecrire une procedure affichant la table de pythagore de la
    multiplication
 
2/ Ecrire une fonction calculant le nieme terme de la suite de fibonacci.
   (donner 2 versions : l'une iterative, l'autre recursive )

3/ Ecrire une fonction ayant pour arguments 2 reels et un operateur
   et retournant le resultat du calcul

4/ Ecrire une fonction calculant la racine carree d'un reel par la
   methode dite "babylonienne"
   Ecrire un programme realisant la resolution d'une equation du second
   degre

5/ Ecrire un programme demandant a l'utilisateur de deviner en 10 coups
   au plus un entier entre 1 et 1000. A chaque essai, le programme
   indique si le nombre est trop petit ou trop grand
   (prevoir les erreurs de saisie)

6/ Ecrire une fonction calculant le nombre de facons d'obtenir la somme
   de N euros avec des pieces de 1, 2 et 5 euros.

7/ Ecrire une procedure "Hanoi" telle que l'appel de "Hanoi(n,a,b)"
   affiche les deplacements necessaires pour transferer n disques de
   l'emplacement a  vers l'emplacement b.

[/spoiler]

Exo-B
[spoiler]
1/ Ecrire une fonction affichant le nombre de fois ou elle a ete appelee

2/ T1 et T2 etant 2 tableaux d'entiers de meme taille, ecrire une
   fonction recopiant dans T2 les elements positifs de T1 et retournant
   le nombre d'elements copies.

3/ Ecrire une fonction calculant le min et le max d'un tableau de
   taille n (et pas 2 fonctions !!!).

4a/Ecrire une fonction ayant pour argument une chaine de caracteres
   formee de chiffres et retournant l'entier ainsi represente.
   Au cas ou l'entree serait erronee, prevoir une information sur
   la validite du calcul.
   On peut aussi envisager le calcul dans une base quelconque

4b/Probleme reciproque

4c/Et avec des chiffres romains.. ?

5/ Utiliser la fonction precedente (B-4a) dans le programme A-4

6/ Ecrire une procedure affichant le triangle de Pascal.

7/ Ecrire une fonction calculant les nombres premiers inferieurs a N.

8/ On genere des nombres pseudo-aleatoires positifs avec les termes
   de la suite U definie par :
   U_{n+1}= 0x8088405 U_n + 1 (mod 2^{32}).

   a- On suppose U_0=0. Ecrire une fonction random ayant pour
   argument un entier positif n et retournant un  nombre
   pseudo-aleatoire entre 0 et n-1.

   b- On suppose que l'on peut obtenir l'heure du systeme grace a un
   appel a "time(NULL)" ("time" est declaree dans time.h) et retournant
   un entier positif. Donner une nouvelle version de  random prenant
   en compte l'initialisation de U grace a cette fonction.
[/spoiler]

Exo-C
[spoiler]- C -

1/ Ecrire une procedure de tri d'un tableau d'elements supposes de nature
   quelconque (?)
    a- en utilisant soit le tri rapide ( On fera la segmentation avec
       l'algorithme dit "du drapeau hollandais"
    b- en utilisant le tri par tas.

    Consignes  : Le tas s'implemente par un tableau dans lequel la taille
    ---------    (c'est a dire le nombre d'elements inseres) puisse etre
    connue.
    Pour cela, on implementera un type "tableau" permettant les operations
    suivantes:

    -  creer :    entier ----->  tableau   % creer(n) retourne  un tableau
                  de capacite n (et non pas de taille n)
    -  ieme  :    entier x tableau ----> element
    -  placer     element x tableau x entier ---->
    -  permuter   tableau x entier x entier ---->

    On definira ensuite a partir de "tableau" un type "tas" muni de ses
    operations ( vide max ajouter retirermax )

2/ Ecrire une fonction "fibonacci" calculant le nieme terme de la suite, et
   le memorisant pour des usages ulterieurs.

3/ a-
   Ecrire une fonction decoupe ayant pour arguments 2 chaines de caracteres
   C et S , S contenant les caracteres consideres comme separateurs, et
   telle que les appels successifs de "decoupe" retournent la suite des
   mots de S (et NULL) lorsqu'il n'y en a plus.
   Rq : a partir du 2eme appel, on utilisera NULL a la place de C, sauf
   pour recommencer un nouveau decoupage.

   b-
   Utiliser "decoupe" pour ecrire une fonction "Decoupe" retournant un
   tableau de mots.
[/spoiler]

Exo-D
[spoiler]--D--

1/ Definir les Listes Recursives par une implementation chainee, puis ecrire
   les fonctions associees.
   Utiliser ces fonctions pour implementer le probleme dit "solitaire bulgare".


2/ Definir les Piles par une implementation chainee, puis ecrire les fonctions
   associees.

   Reprendre l'exercice des "tours de Hanoi" (cf. TD algo) et modeliser les
   tours par des piles d'entiers. (La procedure "Hanoi" affichera
   (horizontalement) les tours a chaque etape.)

3/ Definir les arbres binaires de recherche, puis ecrire les fonctions
   associees.
   Ecrire les fonctions "taille" et "hauteur"
   Experimenter "hauteur" sur 2 arbres , l'un ayant ete initialise a partir
   d'une suite ordonnee , l'autre a partir d'une suite aleatoire.
   Ecrire une procedure de tri de Vecteur utilisant un arbre.[/spoiler]

Exo-E
[spoiler]On considere le probleme du tri d'un fichier F a n elements sur un ordinateur
dont la memoire peut contenir au plus p elements. (p<n)


On va donc trier F en sous-sequences de taille p que l'on ecrit dans
des fichiers (tries) f1, f2 ...  fk  que l'on fusionnera ensuite.



1ere methode

on fusionne f1 et f2 dans un nouveau fichier f{k+1}, f3 et f4 en f{k+2}
et on recommence jusqu'a obtention d'un unique fichier.


a- Ecrire une fonction de fusion de 2 fichiers.

b- Ecrire une fonction qui genere un fichier trie a partir du fichier F
(on utilisera une procedure de tri en memoire deja ecrite : tri rapide
par exemple)



2eme methode


On fusionne simultanement les k fichiers, en utilisant un ensemble S
de taille au plus k et contenant le plus petit element courant de
chaque fichier lors de la fusion.

( Comment organiser S pour qu'a chaque etape le plus petit element de S
soit accessible en temps constant ? )

Ecrire une procedure realisant les  fusions simultanees .
[/spoiler]

Certain exo te demanderons quelques recherche pour bien comprendre ce qu'on te demande. Les exo sont fais pour le C certain ne sont pas très intéressant pour le python. Mais les premiers sont suffisant. Quand tu seras à l'aise passe au C.


Tu peux aussi après te pencher sur le concours prologin il y a des trucs très sympa à faire.
Je t' lily.

Regex / Les ravages de linux
CitationDites, dans un CV, faut mettre si on préfère vim ou emacs ?
Dis papa comment on fait les bébé
[/table

Je suis nul en math  :mellow: , puis pourquoi passé au C alors que je trouve le python assez compliqué xD, je programme pour le plaisirs je compte pas en faire mon métier puis je trouve que python offre beaucoups de possibilité (bien plus que rpg maker en tout cas  :ninja:) donc je trouve que ce langage est parfais pour des jeux type  2d =)

^^

Non mais moi aussi je programme pour le plaisir. Mais si tu veux faire un jeu soit tu passes par des logiciel de making soit tu passe par un langage de programmation. Et si tu passes par un langage tu ne peux pas te contenter d'en savoir aussi peut sur le fonctionnement interne.

Je t' lily.

Regex / Les ravages de linux
CitationDites, dans un CV, faut mettre si on préfère vim ou emacs ?
Dis papa comment on fait les bébé
[/table

Je ne te suit pas la, le python et complet et creer un jeu en python et fesable, alors pourquoi apprendre le python si c' est pour ensuite apprendre le C ..... Je suis perdue la xD

Le python est un langage simple et créer de façon très objet. Il te cache donc beaucoup de chose. Il est donc très pratique pour commencer a programmer.

Le fait qu'il te permette de faire un jeux est pas suffisant pour autant, toi tu va manquer de beaucoup de connaissance pour faire ton jeux.

Mais après tu fais comme tu veux. Je te donne juste mon avis comme tu l'avais demandé.
Note que je te déconseille pas de faire un jeu en python je te déconseille de le faire trop tot.

Va voir ailleurs fait toi un avis une expérience avant de te lancer.
Je t' lily.

Regex / Les ravages de linux
CitationDites, dans un CV, faut mettre si on préfère vim ou emacs ?
Dis papa comment on fait les bébé
[/table

La dessus je suis d'accord avec toi, c' est du suicide de commencé un jeu en python quand on y connait presque rien comme moi. Je n' avais pas l'intention de faire sa non plus ^^', vaut mieux apprendre ,petit a petit et ne pas y aller trop vite =), merci ^^