Page 1 sur 1

tuto pour débutant - je comprends rien

Publié : dim. 11/avr./2004 19:22
par thedoorp
Bonjour, je me suis inscrit très recemment et je suis débuant (mais un vrai de vrai). Donc, aussi claire que les expliquations sont, je ne comprend rien!!!
En esperant une reponse de votre part qui m'expliquerait comment débuter dans le domaine de la programation, je vous souhaite une bonne soirée.

D'avance merci.

Publié : dim. 11/avr./2004 20:00
par Le Soldat Inconnu
Salut,

Tout d'abord, j'ai divisé ton message du tuto "Tuto pour débutants" :)

Ensuite, tu dis que tu ne comprends rien. on va arranger ça. qu'est ce que tu en comprends pas ?

Publié : dim. 11/avr./2004 22:59
par julien
Ne sachant pas trop ce que tu veux, voici une fenetre qui fais pas grand chose mais explique un peu comment fonctionne un programme. Pour + de simplicité, il n'y a pas de procedures.

Code : Tout sélectionner

; la on ouvre une fenetre avec 1 bouton et du texte

  If OpenWindow(1, 330, 248, 289, 193,  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar , "Titre d'une fenêtre")
    If CreateGadgetList(WindowID())
      ButtonGadget(2, 210, 160, 70, 30, "OK")
      TextGadget(3, 10, 10, 260, 110, "Blabla, écrit ce que tu veux la"+Chr(10)+"Ligne 2....", #PB_Text_Center | #PB_Text_Border)
      
    EndIf
  EndIf






Repeat ; la boucle de ton programme qui tourne en rond et attend les instructions
  
  Event = WaitWindowEvent() ; attend un evenement (tres important)
  
  If Event = #PB_EventGadget 
    
    
    
    GadgetID = EventGadgetID()
    
    If GadgetID = 2 ; si tu clique sur le bouton ok
      MessageRequester("Titre","Bye bye",#mb_iconinformation)
      End
      
    EndIf
    
  EndIf
  
Until Event = #PB_EventCloseWindow ; on tourne en rond jusqu'a ce que tu clique sur fermer

End

Publié : dim. 11/avr./2004 23:54
par Invité
un autre programme simple

Code : Tout sélectionner

Debug "bonjour"

cela affiche bonjour !!!


dans une fenetre ( celle du debugeur ) :D

Publié : lun. 12/avr./2004 1:06
par cederavic
Bon alors si tu debute vraiment a peine dans la programmation dit toi que quand tu fait un programme, tu dit a ton ordi de faire des chose par le biai de fonctions. par exemple tu veut lui demander d'ouvrir une console tu lui dira OpenConsole(). tu peut essayer, tu ouvre purebasic, tu tape OpenConsole() et tu lance (touche F5), il va bien ouvrir une console, mais il va la refermé desuite, c'est normal car il n'y a pas de boucle. Donc il faut ajoute une boucle, mais qu'est-qu'une boucle? et bien... pas facil a definir (comme beaucoup de chose, tu verra que seul un morceau de code peut expliker ;) ) donc en voilas un :

Code : Tout sélectionner

OpenConsole()

Repeat

Until Quit = 1
Donc la on a notre boucle (Repeat ... Until) enfait, l'ordi va faire tout ce que tu va lui demande entre Repeat et Until jusqu'a ce que Quit (une variable, je vais t'expliquer) soit egal a 1. Alors un variable, tu peut comparer ça a une boite qui contient des informations (ici un nombre). Biensur on peut modifier cette valeur a l'aide d'operateur, on verra ça plus loin. Bon maintenant on a notre console, c'est bien jolie, un fenetre noir... nan c'est moche, on vas y metre un peut de text. Comment pour ouvrir la console, on va apeller une fonction qui permet d'ecrire du text dans la console, voila le programme, j'explike juste apres :

Code : Tout sélectionner

OpenConsole()

Print("Salut tout le monde!")

Repeat

Until Quit = 1
Voilas, tu peut lancer, tu verra bien une console s'ouvrir avec le text "Salut tout le monde!", c'est chaine de character on l'a envoier en argument a la fonction Print(), beaucoup de fonctions demande 1 ou plusieur argument, un argument ben c'est un information qu'on envoi a la fonction, pour qu'elle sache ce qu'elle doit ecrir (dans notre cas). On peut tres bien metre la chaine de charactere dans une variable et envoier la variable a la fonction printf, pour cela ils nous faut creer une variable de type String (tu retrouver tout les types et leur definition dans l'aide, ah oui, un type ben c'est tout simplement le type d'information que contiendra une variable, ici, notre variable contiendra une chaine de charactere) voilas ce que ça donne :

Code : Tout sélectionner

OpenConsole()

MaVar.s = "Salut tout le monde"

Print(MaVar)

Repeat

Until Quit = 1
tu as sans doute remarquer qu'il y a un .s apres mavar et rien apres quit, tout simplement parceque purebasic considere toute variable non declarer comme une variable de type Long. Bon je pense que tu n'a pa de probleme avec Mavar.s = "Salut tout le monde", on creer une variable mavar de type string et on lui assigne la "valeur" de "salut tout le monde" a l'aide de l'operateur d'assignation "=" (et oui, dans ce cas la ce n'est pas un operateur verification d'egalisation, pas claire, je sais pas comment dir, pi il se fait tard alors faut pas m'en vouloir :p)
voyon maintenant comment recuperer ce qu'on ecrit dans la console. Comme on peut donner des information a une fonction, on peut aussi en recuperer (pas toutes, seulement celle qui le peuvent, logique lol) donc pour recuperer la chaine de charactere que l'utilisateur vas ecrire dans la console on va utiliser Input(). pour ce faire, on va devoir faire une autre variable de type string et grace a elle on va recuperer ce que vas nous renvoier la fonction Input() (elle renvoi ce que l'utilisateur a ecrit dans la console... c'est une impression ou je me repete? la flemme de relire, pa grave), et pour montrer que l'on a bien recuperer la chaine de charactere, on vas l'afficher, voila le code :

Code : Tout sélectionner

OpenConsole()

MaVar.s = "Salut tout le monde!"

Print(MaVar)

Repeat
  in.s = Input()
  Print("Vous avez ecris : " + in)
Until Quit = 1
La tu peut vraiment voir a quoi sert la boucle puisque tout ce que tu vas ecrire , sa va l'ecrire, le programme tourne en boucle (c'est pas pour rien qu'on apelle ça une boucle :p). Bon maintenant voyon les contitions (ou test). On vas regarder si l'utilisateur ecrit "Quitter" dans la console et si il l'ecrit et bien on quittera (on metra alors la variable Quit a 1), voilas le code :

Code : Tout sélectionner

OpenConsole()

MaVar.s = "Salut tout le monde!"

Print(MaVar)

Repeat
  in.s = Input()
  Print("Vous avez ecris : " + in)
  If in = "Quitter"
    Quit = 1
    Print("Aurevoir")
    Delay(3000)
  Endif
Until Quit = 1
Voilas, en traduction mot a mot sa donne : Si in = "Quitter" , Quit = 1, on affiche "Aurevoir", on atend 3 seconde (delay() est une fonction qui permet de suspendre le programme pendant x milliseconde donnée en parametre), fin si. Donc on verifi si le contenu de in est egal a "Quitter" (ici l'operateur "=" est un operateur d'egalité cette foi!!! et dans ce context, sa emble logique, je pense pa que tu ai besoin d'info la dessu, enfin j'espere lol) bon je disait, on verifi si le contenu de in est egal a "Quitter" et si c'et la cas, on met Quit a 1 (avec "=" cette foi ki est un operateur d'assignation, je pense que tu as capter.. nan??? relis depuis le debut :) chui fatiguer moi, je fini ça vite fait et je revien demain pour voir si t'a besoin de plus d'info) donc on met Quit a 1, on affiche "Aurevoir", on atend 3 seconde (la par contre je me repete, c'est sur et certain :?) et on termine la condition avec EndIf. i l'utilisateur ecri "Quitter" vu qu'on aurra mis Quit a 1 et bien notre boucle vas s'arreter ainsi que le programme car notre boucle tournai en boucle (et aller sa continu les repetition lol) jusqu'a ce que Quit soit egal a 1 (et non tant qui Quit n'est pas egal a 1, ça c'et un autre boucle, pareil, tu peut le retrouver dans l'aide). bon voilas je croit que c'est tout pour un debut. Ah une chose, tu verra que tout c'ecrit a la suite, si tu veut retourner a la ligne automatiquement il faut simplement utiliser PrintN au lieu de Print. Je te conseil vivement ausi de bien regarder l'aide et le programme d'exemple.

Voilas, ecrit a 2h du mat avec Nena 99 red baloons a fond dans les oreille, j'espere que sa t'aidera, et si tu n'e pa aussi nouveau que sa pour avoir beoin de sa (encor une!!! repetition...) ben sa servira surement a quelqu'un d'autre :)

Je relirai demain pour voir si j'ai pa dit une grosse connerie (chui sur qu'il y en a plus qu'une)

aller bonne nuit :)

Publié : lun. 12/avr./2004 5:50
par ZapMan
La démonstration de Cederavic prouve d'une manière brillante et incontestable qu'on peut maîtriser la programmation sans avoir aucune notion d'orthographe. Donc, si c'était un soucis pour toi, te voilà rassuré.

Publié : lun. 12/avr./2004 9:42
par Patrick88
ZapMan a écrit :La démonstration de Cederavic prouve d'une manière brillante et incontestable qu'on peut maîtriser la programmation sans avoir aucune notion d'orthographe. Donc, si c'était un soucis pour toi, te voilà rassuré.
meuh non il était fatigué, et puis faut lui pardonné il a fait du c++ :lol: :lol: :lol:

patrick

Publié : lun. 12/avr./2004 9:54
par comtois
oui c'est bien courageux de prendre du temps pour écrire un tut à deux heures du mat .

bon reste à savoir ce que thedoorp ne comprend pas , on va attendre qu'il refasse une apparition.

Publié : lun. 12/avr./2004 10:45
par cederavic
ZapMan a écrit :La démonstration de Cederavic prouve d'une manière brillante et incontestable qu'on peut maîtriser la programmation sans avoir aucune notion d'orthographe. Donc, si c'était un soucis pour toi, te voilà rassuré.
je suis pas la pour faire un concour d'orthographe mais pour essayer d'aider ceux qui ont besoin d'aide donc tans que mes explication sont comprehensible....

Publié : lun. 12/avr./2004 18:29
par Oliv
Tu peux aller sur mon site => www.oliv.fr.fm
Si il y a quelque chose que tu ne comprends pas, dis le

Publié : mer. 14/avr./2004 9:15
par cederavic
comme je l'avais dit, l'ordre dans lequel tu effectu les fonction est tre important, donc pour ce que tu veut faire il faut afficher ce qu'ecrit l'utilisateur avant qu'il ne l'ai ecrit (heu... du code t'aidera a comprendre :) )

Code : Tout sélectionner

OpenConsole() 

MaVar.s = "Salut tout le monde!" 
In.s ;il faut la declarer avant de l'utiliser 

PrintN(MaVar) 

Repeat 
  
  If In = "Quitter" ; on verifi avant d'ecrir
    Quit = 1 
    Print("Aurevoir") 
    Delay(3000) 
    End; force l'arret du programme
  ElseIf In <> "" ; on verifi si le contenu de In n'est pas vide 
    PrintN("Vous avez ecris : " + In) 
  EndIf 
  In = Input() 
  PrintN("");retour a la ligne
Until Quit = 1 
Edit : desolé, j'ai repris pas mal de foi le code, la il est bon :)