Home
Manuel d`utilisation de XLOGO :
Contents
1. Ils n existent pas dans les versions traditionnelles de LOGO Voici quelques exemples d utilisation ec 3 4 7 1 gt vrai ec 3 4 7 49 7 gt vrai ec 3 4 amp 7 49 7 gt faux 10 3 6 Les couleurs Les couleurs sont d finies dans XLogo l aide de trois nombres compris entre 0 et 255 Ce syst me de codage s appelle le codage RGB Red Green Blue Chaque nombre correspond respectivement l intensit du rouge du vert et du bleu dans la couleur consid r e Etant donn que ce codage n est pas tr s intuitif XLogo vous propose galement 16 couleurs pr d finies accessibles soit par un num ro soit par une primitive RC E 255 0 0 0 255 0 255 255 0 0 0 255 255 0 255 0 255 255 255 255 255 128 128 128 192 192 192 128 0 0 0 128 0 0 O 128 255 200 0 255 175 175 128 0 255 153 102 0 Ces trois commandes ont le m me effet fcc orange fcc 13 fcc 255 200 0 11 Chapitre 4 Liste des primitives Comme il a t indiqu auparavant le contr le de la tortue s effectue l aide de commandes internes appel es primitives Voici une classification de ces primitives 4 1 D placement de la tortue gestion du crayon et des couleurs Ce premier tableau regroupe les primitives qui permettent de d placer la tortue Primitives Arguments Utilisation n nombre de pas Fait avancer de n pas la tortue suivant l orientation courante avance av n nombre
2. dans le presse papiers Edition gt Coller colle le texte contenu dans le presse papiers dans la ligne de commande Menu Options Options gt Choisir la couleur du crayon permet de choisir la couleur avec laquelle crit la tortue l aide d une palette de couleurs Disponible galement avec la primitive fcc Options gt Choisir la couleur du fond m me chose avec le fond d cran Disponible avec la primitive fcfg Options gt D finir les fichiers de d marrage permet de d finir des chemins vers des fichiers dit de d marrage Toutes les proc dures contenues dans ces fichiers au format lgo deviendront alors des pseudo primitives du langage XLogo Elles ne sont pas ditables ni modifiables 2 4 par l utilisateur Vous pouvez ainsi d finir des primitives personnalis es Vous pouvez de plus lui donner une commande en logo effectuer au d marrage de XLogo Vous avez ainsi la possibilit de lancer un programme que vous avez con u d s l ouverture de XLogo Options gt Traduire des proc dures Ouvre une bo te de dialogue qui permet de traduire des commandes XLogo dans une langue d sir e Tr s utile en particulier lorsqu on r cup re des sources Logo en anglais sur internet pour les remettre en fran ais Options gt Pr f rences Ouvre une bo te de dialogue dans laquelle vous pouvez configurer plusieurs choses Langue permet de choisir entre le fran ais et l anglais
3. ecoutetcp executetcp chattcp et envoietcp On prendra toujours dans les exemples qui suivent le cas des deux ordinateurs du sch ma pr c dent e ecoutetcp Cette primitive ecoutetcp est la base de toute communication r seau Elle n attend aucun argument Elle permet de mettre l ordinateur qui l ex cute l coute d ordres donn s par d autres ordinateurs du r seau e executetcp Cette primitive permet d ex cuter des instructions sur un ordinateur du r seau Syntaxe executetcp mot liste Le mot d signe l adresse IP ou le nom de l ordinateur appel la liste contient les instructions ex cuter 39 Exemple Je suis sur l ordinateur lievre je souhaite tracer un carr de c t 100 sur l autre or dinateur Par cons quent il faut que sur l ordinateur tortue je lance la commande ecoutetcp Ensuite sur l ordinateur lievre je lance executetcp 192 168 1 2 repete 4lav 100 td 901 ou executetcp tortue repete 4 av 100 td 901 e chattcp Permet de dialoguer entre deux ordinateurs du r seau en affichant une fen tre per mettant la conversation Syntaxe chattcp mot liste Le mot d signe l adresse IP ou le nom de l ordinateur ap pel la liste contient la phrase afficher Exemple lievre veut discuter avec tortue tortue lance ecoutetcp pour se mettre en attente de requ te d ordinateurs du r seau lievre lance alors chattcp 192 168 1 2 bonjour Deux fen tres permettant le dialogue s
4. fac retourne 1 fac retourne 2 fac retourne 6 fac retourne 24 24 23 Primitives Param tres Utilisation a b a mot b Si la variable locale a existe lui affecte la va donne quelconque leur b Sinon cr e la variable globale a en lui affectant la valeur b Ex donne a 100 affecte 100 la variable a a mot Cr e une variable nomm e a Attention celle ci locale n est pas initialis e Pour lui donner une valeur voir donne a b a mot b Cr e une nouvelle variable locale a et lui affecte donnelocale quelconque la valeur b D finis une nouvelle proc dure nomm e motl munie des variables contenues dans liste2 et dont les instructions ex cuter sont contenues dans liste3 def polygone nb longueur mot liste2 repete nblav longueur td 360 nb def definis liste3 gt Ceci d finit une proc dure nomm e poly gone avec deux variables nb et longueur Elle permet de tracer un polyg ne r gulier dont on peut choisir le nombre de c t s et la longueur de chacun des c t s a mot Renvoie la valeur de la variable a chose chose a et a sont deux notations quivalentes a mot Efface la proc dure s appelant a efn effacenom a mot Efface la variable a efv effacevariable aucun Efface toutes les variables et proc dures en efns effacenoms Cours aucun Enum re toutes les proc dures actuellement d ints finies aucun Renvoie une liste contenant l ensemble des va
5. ix2 2 4 6 8 A pr sent on fait varier i entre 7 et 2 en descendant de 1 5 chaque fois noter 1 incr ment n gatif On affiche ensuite i son carr repetepour i 7 2 1 5 ec liste i puissance i 2 33 7 49 5 5 30 25 4 16 2 5 6 25 4 13 3 Une boucle avec tantque Voici la syntaxe de tantque tantque liste_a_ tester liste_d_instruction liste_a_tester est une liste contenant une suite d instruction rendant un bool en liste_d_instruction est une liste contenant des instruction ex cuter L interpr teur LOGO ex cutera continuellement liste_d_instruction tant que liste_a_tester rend vrai Ex tantque vrail td 1 La tortue tourne sur elle m me Un exemple qui nous permet d peler l alphabet l envers donne liste abcdefghijklmnopqrstuvwxyz tantque non vide liste ec dernier liste donne liste saufdernier liste 34 4 14 Intercepter des actions de l utilisateur XLOGO peut interagir avec l utilisateur pendant l ex cution d un programme par l interm diaire du clavier et de la souris 4 14 1 Interaction avec le clavier On peut donc recevoir du texte de l utilisateur pendant le programme l aide de 3 primitives touche liscar et lis touche rend vrai ou faux selon qu une touche ait t press e ou non depuis le d but de l ex cution du programme liscar e Si touche est faux bloque le programme jusqu ce l utilisateur appuie sur une touche e Si touche est
6. listevariables riables actuellement d finies a liste Ex cute la liste d instruction contenue dans la exec execute ste 24 4 8 Gestion des Fichiers Utilisation Affiche le fichier image contenu dans la liste Son coin sup rieur gauche sera plac o se trouve la tortue Les formats support s sont le png et le jpg Le chemin sp cifi doit tre relatif par rapport au r pertoire courant Ex chargeimage tortue jpg aucun Liste le contenu du r pertoire par d faut Equivalent de la cat catalogue A commande 1s pour linux et dir pour DOS ee m mot Fixe le r pertoire en cours Le chemin doit tre absolu et dd doit tre sp cifi l aide d un mot fixerepertoire m mot Permet de choisir le r pertoire courant Le chemin est relatif changedossier p as S par rapport au r pertoire courant actuel On peut utiliser la notation pour faire r f rence au r pertoire parent rep aucun Rend le r pertoire en cours Par d faut il est fix au r repertoire pertoire utilisateur c est dire home votre_login pour les linuxiens C WINDOWS pour les autres m Sauv mot l liste Un bon exemple pour expliquer cela sauve essai lgo proc1 proc2 proc3 sauve dans le fichier essai lgo du r pertoire courant les proc dures procl proc2 et proc3 Si l extension lgo est omise elle est rajout e par d faut Le mot sp cifi d signe un chemin relatif par rapport au r per toire coura
7. s e Taper ed dans la ligne de commandes L diteur s ouvrira alors avec toutes les proc dures d j d finies Si vous ne souhaitez diter que certaines proc dures particuli res taper alors ed procedure_1 procedure_2 e Appuyer sur le bouton Editeur de la fen tre principale e Utiliser le raccourci clavier Alt E Voici les diff rents boutons que vous trouverez dans l diteur Sauve les modifications apport s au contenu de l diteur puis ferme celui ci C est sur ce bouton qu il faut appuyer chaque fois que vous voulez enregistrer les nouvelles proc dures tap es Si vous le pr f rez vous pou vez utiliser le raccourci clavier ALT Q Quitte l diteur en n enregistrant aucune des modifications apport es celui ci On peut galement utiliser le raccourci ALT C Imprime le contenu de l diteur Copie le texte s lectionn dans le presse papiers X 0 D Coupe le texte s lectionn dans le presse papiers R E Colle le texte s lectionn dans le presse papiers IMPORTANT e Cela ne sert rien d appuyer sur la croix en haut droite pour fermer la fen tre Seuls les deux premiers boutons vous permettent de quitter l diteur e Pour effacer une ou toutes les proc dures ind sirables utiliser les primitives efn et efns Chapitre 2 Options des menus 2 1 2 2 Menu Fichier Fichier gt Nouveau D truit l ensemble des proc dures et variables d finies pour cr er ainsi
8. cap de celle ci 12 Utilisation EHS a liste Le point d fini par les coordonn es de la liste s allume dans la couleur du crayon Ce deuxi me tableau regroupe les primitives permettant d agir sur les propri t s de la tortue Par exemple faut il que la tortue soit visible l cran De quelle couleur doit elle crire lorsqu elle se d place Utilisation aucun Rend la tortue visible l cran montretortue mt aucun Rend la tortue invisible l cran cachetortue ct aucun Efface la zone de dessin et r initialise la tortue videecran ve x See Une sa position initiale aucun Efface la zone de dessin mais laisse la tortue au nettoie R m me endroit aucun La tortue crit lorsqu elle se d place baissecrayon bc aucun La tortue n crit pas lors d un d placement Cars Lc aucun La tortue efface tous les traits qu elle rencontre gomme go go aucun Abaisse le crayon et met la tortue en mode d in inversecrayon ic version aucun Abaisse le crayon et le met en mode dessin clas dessine de sique o vrai ou faux animation e Si l argument vaut vrai On passe en mode animation La tortue ne dessine plus a l cran mais effectue le trac en m moire Pour ac tualiser le dessin l cran utiliser la primitive rafraichis Tr s utile pour cr er une anima tion ou effectuer un trac plus rapidement Si Pargument vaut faux On repasse en mode classique On voit
9. d faut cette valeur est fix e 64 Mo Il se peut que vous soyez oblig de l augmenter si vous souhaitez travailler sur une zone de dessin plus grande Lorsqu on modifie ce param tre le changement n est effectif qu apr s red marrage de XLogo Atten tion n augmentez pas abusivement sans raison cette valeur cela peut consid rablement ralentir votre syst me gt Enfin Vous pouvez choir la pr cision du trac En haute qualit vous n aurez plus d effet de cr nelage en particulier En revanche bien penser qu en augmentant la qualit vous perdrez en rapidit d ex cution Dans le quatri me onglet vous trouverez la liste des instruments que peut imiter votre carte son au travers de l interface MIDI Vous pouvez s lectionner un instrument pr cis en cli quant dessus Vous pouvez galement galement s lectionner un instrument avec la primitive fixeinstrument num ro Malheureusement il semble que la liste des instruments conserve un comportement un peu al atoire Mat riel non d tect en particulier J esp re que ce d tail sera am lior dans les versions futures Voir la FAQ en fin d emanuel ce sujet Dans le cinqui me onglet vous pouvez choisir la police de l interface graphique ainsi que sa taille Attention ceci n affecte pas la police rendue par les primitives ecris et etiquette d Menu Aide Menu gt Licence Affiche la licence GPL sous laquelle est distribu ce logiciel Menu
10. en rajoutant un caract re devant Tout caract re tout seul est ignor Cette remarque est tr s importante en particulier pour la gestion des fichiers Pour fixer le r pertoire courant C Mes Documents il faudra taper fixerepertoire c Mes Documents Noter l utilisation du pour notifier l espace entre Mes et Documents Si d autre part vous omettez le double backclash le chemin d fini sera alors c Mes Documents et l interpr teur rendra un message d erreur 3 4 R gles concernant les majuscules et minuscules XLOGO ne fait pas la diff rence majuscule minuscule en ce qui concerne les noms des proc dures et des primitives Ainsi avec la proc dure carre d finie pr c demment que vous tapiez CARRE ou cArRe l interpr teur de commande traduira correctement et ex cutera carre En revanche XLOGO respecte les majuscules dans les listes et les mots ecris Bonjour gt Bonjour on garde le B majuscule 3 5 Op rateurs et syntaxe Il y a deux fa ons d crire certaines commandes Par exemple pour effectuer l addition de 4 et de 7 il y a deux possibilit s soit on se sert de la primitive somme qui attend deux arguments somme 4 7 soit on se sert de l op rateur 4 7 Les deux ont le m me effet Voici la liste des correspondances entre op rateurs et primitives ou o amao _ amp Les deux op rateurs et amp sont deux op rateurs sp cifiques XLOGO
11. finies entre crochets Les nombres sont trait s soit en tant que valeur num rique Ex av 100 mais galement en tant que mot Ex ecris vide 12 cris faux 3 2 Proc dures En plus de ces primitives vous pouvez d finir vos propres commandes On les appelle les proc dures Les proc dures sont introduites l aide du mot pour et se terminent par le mot fin On utilise l diteur de proc dures interne XLOGO pour les taper Voici un petit exemple pour carre repete 4 avance 100 tournedroite 90 fin Ces proc dures ont le droit d admettre galement des arguments Pour cela on utilise des variables Une variable est un mot auquel on peut affecter une valeur voici un exemple tr s simple pour deux_fois mot ecris mot ecris mot fin deux_fois 1 2 3 gt Voir tous les exemples de proc dures en fin de manuel 3 3 Le caract re sp cial Le caract re backslash permet en particulier de cr er des mots contenant des espaces ou contenant un retour la ligne n provoque un retour la ligne et suivi d un espace d signe un espace dans un mot Exemple ec xlogo xlogo xlogo xlogo ec xlogo nxlogo xlogo xlogo Il s ensuit que l on ne peut plus acc der au caract re en le tapant il faudra taper De m me les caract res sont des d limiteurs du langage Logo qui ne peuvent tre utilis s dans des mots On pourra les introduire
12. les d placements de la tor tue l cran aucun En mode animation rafraichit l cran l image rafraichis e A sur la zone de dessin est actualis e entier ou Fixe la couleur du crayon Voir p 11 Lae r g b fixecouleurcrayon fcc a entier ou Fixe la couleur du fond d cran Voir p 11 fixecouleurfond liste r g b fcfg aucun Retourne la position courante de la tortue Ex pos retourne 10 100 Retourne le cap de la tortue cf fixecap vers a liste La liste doit contenir deux nombres repr sentant des coordonn es Rend le cap qu il faut donner la tortue pour aller vers le point d fini par les coordonn es de la liste 13 Arguments Utilisation a liste La liste doit contenir deux nombres repr sentant des coordonn es Rend le nombre de pas entre la position actuelle et le point d fini par les co ordonn es de la liste Primitives distance a liste Retourne la couleur actuelle du crayon Cette couleur est d termin e l aide d une liste r g b ou r est la composante rouge b la bleue et g la verte couleurcrayon CC a liste Retourne la couleur actuelle du fond Cette cou leur est d termin e l aide d une liste r g b ou r est la composante rouge b la bleue et g la verte Si la tortue sort de la zone de dessin elle r ap para t de l autre c t La tortue est libre de sortir de la zone de des sin Bien s r elle n crira pas en dehors de cette dern
13. servir du r seau avec XLogo 4 16 1 Le r seau comment a marche Tout d abord dans cette introduction il est n cessaire de vous expliquer certains termes de vocabu laire afin de bien comprendre l usage des diff rentes primitives Deux ordinateurs peuvent commuiquer Adresse 192 168 1 1 Adresse 192 168 1 2 Mom lievre Mom tortue FIG 4 5 Notion de r seau via le r seau s ils sont quip s de carte r seau appel e aussi carte ethernet Chaque ordinateur est alors rep r par une adresse personnelle Son adressse IP Cette adresse IP est compos e de 4 entiers compris entre O et 255 s par s par des points Par exemple l adresse IP du premier ordinateur du sch ma pr c dent est 192 168 1 1 Etant donn qu il n est pas facile de retenir ce genre d adresse il est galement possible de faire correspondre chaque adresse IP un nom usuel plus facile retenir Sur le sch ma pr c dent on peut ainsi s adresser l ordinateur de droite soit en l appelant par son adresse IP 192 168 1 2 soit en l appelant par son nom tortue Je ne m tends pas davantage sur la signification de ces nombres Je rajoute juste une chose qu il est bon de savoir l ordinateur local sur lequel on travaille est rep r galement par une adresse 127 0 0 1 Le nom qui lui est associ est g n ralement localhost 4 16 2 Primitives orient es r esau XLogo dispose de 4 primitives permettant de communiquer gr ce au r seau
14. un nouvel espace de travail Fichier gt Ouvrir ouvre un fichier logo pr c demment enregistr Fichier gt Enregistrer enregistre les proc dures du fichier en cours Fichier gt Enregistrer sous enregistre les proc dures en cours sous un nom pr cis Fichier gt Quitter quitte l application XLOGO Fichier gt Capturer l image gt Enregistrer l image sous permet d enregistrer l image sous le format jpg ou png Si vous souhaitez s lectionner seulement une partie de l image vous avez la possibilit de d finir un cadre en cliquant successivement deux fois pour d finir deux coins d une m me diagonale du rectangle de s lection Fichier gt Capturer l image gt Imprimer l image permet d imprimer l image De la m me fa on que pr c demment vous pouvez s lectionner une zone imprimer Fichier gt Capturer l image gt Copier l image dans le presse papier Permet d envoyer l image dans le presse papier syst me De m me que pour l impression et l enregistrement vous pouvez ne s lectionner qu une zone de l image Cette fonctionnalit fonctionne tr s bien sous les envi ronnements de type Windows En revanche elle ne marche pas sous Linux Le presse papier n a pas le m me type de fonctionnement Non test sous Mac Menu Edition Edition gt Copier copie le texte s lectionn dans le presse papiers Edition gt Couper coupe le texte s lectionn
15. 16 2 Primitives orient es r esau 39 Exemples de programmes 41 5 1 Dessiner des maisons 41 5 2 Dessiner un rectangle plein 43 Da deele m aida Da Dean 3 0 A EE ein di eee 43 54 Le flocon Merci Georges No l 4 44 Lui ooo errar 43 0 0 Un peu d criture is E sniper aan LUE ER Same Apte are 45 b 6 Etdeconjupalsonms su same mi dense a a Rens 46 506 1 Premi re Versi n ivi cai a a a ae HUE AREA Ro 46 5 6 2 Deuxi me mouture ea esa du nar r de EE a EE EE A E 46 5 6 3 Ou alors Un peu de r cursivit 46 5 7 Avec les couleurs 47 KCL Introduction e anus 480 ria dim he poor a sn 4 he pos 47 57 2 Passons a la pratique 4 Lea ue ge Kara E e EA La e 47 5 7 3 Et si on la voyait en n gatif 48 5 8 Un bel exemple d utilisation des listes Merci Olivier SC 49 5 9 Une belle rosace ss ras se gosg manad b ea aea e La ga a p oe a a Rop 50 D sinstallation mise jour 51 6 1 D sinstallation 51 6 27 Misesa JOUT a cutie e EN Re diner dre e D RUN AN de Rae D 51 Foire aux questions Astuces trucs conna tre 52 7 1 J ai beau effacer une proc dure dans l diteur elle r appara t tout le temps 52 7 2 J utilise la version en esp ranto mais je ne peux crir
16. 9 On ferme le flux pour achever l criture fermeflux 2 A pr sent on peut constater que l criture s est bien pass e On ouvre un flux vers le fichier lire Ce flux sera rep r par le num ro 0 ouvreflux O c exemple On lit les lignes du fichiers successivement ec lisligneflux 0 ec lisligneflux 0 ec lisligneflux 0 On ferme le flux 26 fermeflux 0 Si on souhaite pr sent rajouter la ligne Formidable fixerepertoire C ouvreflux 1 exemple ajouteligneflux 1 Formidable fermeflux 1 27 4 9 Fonction avanc e de remplissage Il existe deux primitives permettant de colorier une forme La primitive remplis et la primitive rempliszone On peut apparenter ces primitives avec la fonction pot de peinture utilis e dans de nombreux logiciels de retouche d images On peut atteindre les bords de la zone de dessin Il y a deux r gles respecter pour utiliser correctement ces primitives 1 Le crayon doit tre en position baiss bc 2 La tortue ne doit pas tre situ e sur un pixel de la couleur dont on veut remplir la forme Si on veut colorier en rouge ne pas se trouver soi m me sur du rouge Voyons un exemple pour expliquer la diff rence entre remplis et rempliszone Le pixel sous la tortue FIG 4 1 Situation initiale est actuellement de couleur blanche La primitive remplis va colorier tous les pixels blancs voisins avec la couleur du crayon en cours Si par exe
17. Attention les primitives changent d une langue l autre Aspect permet de d finir le look de la fen tre XLogo Soit style Windows style Java natif ou style Motif Choisir la vitesse de d filement Si vous souhaitez voir tous les d placement de la tortue vous pouvez la ralentir l aide de la barre pr vu dans le premier onglet Dans le deuxi me onglet vous pouvez choisir votre tortue pr f r e Dans le troisi me onglet Plusieurs choses peuvent tre fix es gt Tout d abord on peut fixer une taille limite l paisseur du crayon Si l on ne veut pas utiliser cette limitation mettre le nombre 1 dans la zone de texte associ e gt Ensuite on peut choisir la forme du crayon de la tortue on ne se rend compte du choix de cette option que lorsque l on choisit une paisseur de crayon sup rieure 1 gt On peut galement fixer le nombre de tortues maximum en mode multitortues Par d faut 16 On peut choisir d effacer automatiquement la zone de dessin lorsqu on sort de l diteur Vous pouvez choisir une taille personnalis e pour la zone de trac Par d faut XLogo se lance avec une zone de 1000 pixels sur 1000 pixels Attention lorsque vous agrandissez l image il peut tre n cessaire d augmenter la taille m moire attribu e XLogo Un mes sage d erreur vous en avertira gt Vous pouvez par cons quent galement changer la valeur correspondant l espace m moire allou XLogo Par
18. Celui de gauche permettra de tracer un carr de 40 sur 40 vers la droite celui de droite un petit cercle vers la gauche Enfin si l on clique avec le troisi me bouton de la souris sur le bouton de droite cela provoquera l arr t du programme pour bouton cr e un bouton rectangulaire de 50 sur 100 colori en saumon repete 2 av 50 td 90 av 100 td 90 td 45 lc av 10 bc fcc 255 153 153 remplis re 10 tg 45 bc fcc O fin pour lance 36 ve bouton lc fpos 150 0 bc bouton lc fpos 30 20 bc etiquette Carr lc fpos 180 20 bc etiquette Cercle lc fpos O 100 bc souris fin pour souris On enregistre le r sultat de lissouris dans la variable ev donne ev lissouris On enregistre la premi re coordonn e de la souris dans la variable x donne x item 1 possouris On enregistre la premi re coordonn e de la souris dans la variable y donne y item 2 possouris Si l on clique sur le bouton de gauche si ev 1 amp x gt 0 amp x lt 100 y gt 0 y lt 50 carre Si l on clique sur le bouton de droite si x gt 150 amp x lt 250 y gt 0 y lt 50 si ev 1 cercle si ev 3 stop 1 souris fin pour cercle repete 90 av 1 tg 4 tg 90 lc av 40 td 90 bc fin pour carre repete 4 av 40 td 901 td 90 av 40 tg 90 Wooosddde 37 4 15 Gestion du temps XLogo dispose de plusieurs primitives permettant de conna tre l heure la date ou encore de g rer des comptes rebours utiles pour r p te
19. Manuel d utilisation de XLOGO Le Coq Lo c 25 mars 2007 Table des mati res Pr sentation de l interface 1 1 Fen tre principale e eos 4 4 44 4 EE mu du sni aed BR EEN i a de e 1 2 L diteur de proc dures Options des menus 21 Menu Fichier 440 8 rape ka 4 6 8 3 mo dit due a a 6 mie 4 isa 22 Menn Edition aope 4 66 dou sue RTR 4 8 dan iaa 08 Ro ee 4 dis 2 3 Menu Options e dam y as R sole meme Eaa able EEN ui des 24 Meni Ade us a dra E taie ne ere De RD NRA Conventions adopt es dans XLOGO 3 1 Commandes et interpr tation 3 2 Proc dures sais sas yarusga haha duc 4 does da e 33 Le caract re sp cial Y oro isos EE ARA Rs dE EEE Be 3 4 R gles concernant les majuscules et minuscules 3 5 Op rateurs et syntaxe sisi ea a 86 nh 9 3 3 0 Les Couleurs x m 4 2 44 Le La AN stade nada este med n hs Liste des primitives 4 1 D placement de la tortue gestion du crayon et des couleurs 4 2 Affichage du texte dans la zone d historique 4 3 Op rations arithm tiques et logiques 4 4 Op rations sur les listes et les mots 4 5 Bool ns es 4 axe LS 16 d RRR der mere aa uhe be deu da ee he 4 6 Effectuer un test l aide de la primitive si 4 7 Gestio
20. a entier b Si b est un mot renvoie la lettre a du mot 1 d signe item liste ou mot la premi re lettre Si b est une liste renvoie l l ment num ro a de la liste a liste ou mot Si a est une liste renvoie toute la liste sauf le der saufdernier sd nier l ment Si a est un mot renvoie le mot sans sa derni re lettre a liste ou mot Si a est une liste renvoie toute la liste sauf le pre saufpremier sp mier l ment Si a est un mot renvoie le mot sans sa premi re lettre a liste ou mot Si a est une liste renvoie le dernier l ment de la liste enen DT dS cot an not remote la demi ketre du mot a liste ou mot Si a est une liste renvoie le premier l ment de la liste pomor pren PE wn mot revese la prieto du mt lil n li2 lil Dans la liste 1i remplace l l ment num ro n par le remplace liste n entier mot ou la liste propos 112 mot ou liste remplace a b c 2 8 gt a 8 c lil n li2 lil Dans la liste 1i ajoute en position num ro n le mot ajoute liste n entier ou la liste propos 112 mot ou liste ajoute a b c 2 8 gt a 8 b c 19 a liste ou mot Si a est un mot renvoie le nombre de lettres de a Si compte PTT a est une liste renvoie le nombre d l ments de a a mot Renvoie la valeur unicode du caract re a unicode on IT ec unicode A renvoie 65 a nombre Renvoie le caract re dont la valeur unicode est a caractere car ec caracte
21. c repete 4lav c td 90 fin La proc dure se nomme carre et poss de un param tre s appelant c carre 100 produira donc un carre de c t 100 Voir les exemples de proc dures la fin du manuel Il est possible depuis la version 0 7c de rajouter des commentaires dans le code en les pr c dant du signe pour carre c cette proc dure permet de tracer un carr de c t donn c repete 4 av c td 90 pratique non fin IMPORTANT Il ne doit pas y avoir de commentaires sur la ligne du pour et sur celle de fin 22 4 7 2 Notion de variables Tl existe deux sortes de variables e Les variables globales elles sont toujours disponibles n importe quel endroit du programme e Les variables locales elles ne sont accessibles que dans la proc dure o elles ont t d finies Dans cette version de LOGO les variables locales ne sont pas accessibles dans les sous proc dures A la sortie de la proc dure les variables locales sont limin es 4 7 3 La primitive trace Il est possible pour suivre le d roulement d un programme de lui faire afficher les proc dures en cours d ex cution Ce mode permet d afficher galement si les proc dures rendent des arguments l aide de la primitive retourne Pour enclencher ce mode on tape trace vrai Bien s r trace faux d sactivera le mode trace Un petit exemple avec le factorielle voir p 43 trace vrai ecris fac 4 fac 4 fac 3 fac 2 fac 1
22. cer une proc dure dans l diteur elle r appara t tout le temps Lorsqu on sort de l diteur celui ci se contente juste de sauver ou de mettre jour le contenu de l diteur Le seul moyen d effacer une proc dure dans XLogo est d utiliser la primitive effacenom ou efn Exemple effacenom toto gt efface la proc dure toto 7 2 J utilise la version en esp ranto mais je ne peux crire les ca ract res sp ciaux Lorsque vous tapez dans la ligne de commande ou l diteur si vous faites un clic avec le bouton droit de la souris apparait un menu d roulant Dans ce menu figurent les traditionnels fonctions d dition copier couper coller et les caract res sp ciaux de l esp ranto lorsque ce langage est s lectionn 7 3 Dans l onglet Son de la bo te de dialogue Pr f rences aucun instrument n est disponible D sol ce probl me est connu Il est d la machine virtuelle java Ce probl me est totalement al atoire Par exemple chez moi j ai un ordinateur qui tourne sous linux et win98 Sous win98 la liste n apparait pas sous linux si Pourtant j utilise le m me JRE et je n ai aucun probl me mat riel D une version d un JRE l autre ce comportement peut changer 7 4 J ai des problemes de rafraichissement d cran lorsque la tortue dessine Probl me connu galement et typique des JRE gt 1 4 2 J essaierai d y rem dier dans le futur je peux peut tre faire quelque chose Deux solutio
23. de pas Fait reculer de n pas la tortue suivant l orientation courante recule re f n angle Fait tourner la tortue de n degr s vers la droite par rapport tournedroite td i son orientation actuelle tournegauche fe n angle Fait tourner la tortue de n degr s vers la gauche par rapport son orientation actuelle eae eene O Trace un cercle de rayon R autour de la tortue cercle SE R nombre Trace un arc de cercle de rayon R autour de la tortue Cette capl cap2 nombres arc est compris entre les caps capl et cap2 dia aucun Replace la tortue sa position initiale c est dire au point de origine coordonn es 0 0 et avec pour cap 0 x y liste de deux D place la tortue au point de coordonn es sp cifi l aide de fixeposition DS 4 pos nombres la liste des deux nombres x d signe l abscisse et y l ordonn e D place la tortue horizontalement jusqu au point d abscisse x D place la tortue verticalement jusqu au point d ordonn e y absci is or Anal f donn e S n cap Oriente la tortue au cap sp cifi O correspond la position ver fixecap i s s ticale vers le haut On tourne ensuite dans le sens des aiguilles d une montre BE a mot ou liste Dessine le mot ou la liste sp cifi e l endroit o se trouve la q tortue et suivant son inclinaison Exemple etiquette Salut toi va crire la phrase Salut toi l endroit o est plac la tortue en respectant le
24. e appr cier ce magnifique programme pour inversem m si vide m retourne retourne mot dernier m inversem sd m fin 49 pour palindrome m SI EGAL M INVERSEM M RETOURNE VRAI RETOURNE FAUX fin pour palin n SI PALINDROME N ECRIS N STOP ECRIS PH PH PH PH N PLUS INVERSEM N EGAL SOMME N INVERSEM N PALIN N INVERSEM N fin palin 78 78 PLUS 87 EGAL 165 165 PLUS 561 EGAL 726 726 PLUS 627 EGAL 1353 1353 PLUS 3531 EGAL 4884 4884 5 9 Une belle rosace pour rosace repete 6 repete 60 av 2 td 1 td 60 repete 120 av 2 td 1 td 60 fin pour belle_rosace rosace repete 30 av 2 td 1 rosace repete 15 av 2 td 1 rosace repete 30 av 2 td 1 rosace fin fcfg O ve fcc 5 ct rosace lc fpos 300 0 bc fixecap O belle_rosace 50 Chapitre 6 D sinstallation mise jour 6 1 D sinstallation Pour d sinstaller XLogo il suffit de supprimer le fichier XLogo jar et le fichier de d mrrage xlogo il est situ dans votre r pertoire utilisateur c est dire home votre login pour les linuxiens ou c windows xlogo 6 2 Mise jour Pour toute nouvelle version et les corrections de bugs se rendre de temps en temps sur le site de XLogo c est dire http xlogo tuxfamily org Ne pas h siter crire en cas de probl me d installation ou d utilisation Toute suggestion est la bienvenue 51 Chapitre 7 Foire aux questions Astuces trucs conna tre 7 1 J ai beau effa
25. e les caract res sp ciaux 52 7 3 Dans l onglet Son de la bo te de dialogue Pr f rences aucun instrument n est disponible 52 7 4 J ai des probl mes de rafraichissement d cran lorsque la tortue dessine 52 7 5 Comment faire pour taper rapidement une commande d j utilis e au pr alable 53 7 6 Comment peut on vous aider e 53 Chapitre 1 Pr sentation de l interface 1 1 Fen tre principale KE 4 av 200 td 90 Editeur Stop e ne sais pas comment faire fsdf En haut les traditionnels menus Fichier Edition Options et Aide Juste en dessous la ligne de commande qui permet de saisir les instructions logo Au centre la zone de dessin En bas la zone historique qui rappelle toutes les derni res commandes tap es et les r ponses associ es Pour rappeler rapidement une instruction d j tap e il y a deux solutions ou bien vous cliquez sur l ancienne instruction dans l historique ou bien vous appuyez plusieurs fois sur la fl che du haut jusqu ce que l instruction d sir e apparaisse Les deux fl ches haut et bas permettent en fait de se d placer dans toute l historique des commandes tap es pr c demment Tr s pratique A la droite de l historique deux boutons STOP et EDITEUR STOP interrompt toute ex cu tion en cours et EDITEUR permet d ouvrir l diteur de proc dures 1 2 L diteur de proc dures Pour ouvrir l diteur trois possibilit
26. efinis def 24 dernier der 19 dessine de 13 difference 17 distance 14 div divise 17 donne 24 donnelocale 24 ec ecris 16 ecoutetcp 39 ecrisligneflux 26 effacenom efn 24 effacenoms efns 24 effacesequence efseq 31 effacevariable efv 24 egal 21 enleve 19 enroule enr 14 entier 21 envoietcp 40 et 18 etiquette 12 execute exec 24 executetcp 39 faux 21 fenetre fen 14 fermeflux 26 fin 22 finflux 26 finstrument finstr 31 fintemps 38 fixecap 12 fixecouleurcrayon fcc 13 fixecouleurfond fcfg 13 fixecouleurtexte fct 16 fixeforme fforme 14 fixeindexsequence findseq 31 fixenompolice fnp 14 fixenompolicetexte fnpt 16 fixeposition fpos 12 fixerepertoire frep 25 fixeseparation fsep 15 fixestyle fsty 16 54 fixetaillecrayon ftc 14 fixetaillepolice ftp 14 fixetaillepolicetexte ftpt 16 fixetortue ftortue 31 fixex 12 fixexy 12 fixey 12 forme 14 gomme go 13 gris 11 grisclair 11 hasard 17 heure 38 imts 24 indexsequence indseq 31 instrument instr 31 inverse 19 inversecrayon ic 13 item 19 jaune 11 joue 31 levecrayon lc 13 lis 35 liscar 35 liscarflux 26 lisligneflux 26 lissouris 36 liste 19 liste 21 listeflux 26 listevariables 24 locale 24 log10 17 magenta 11 marron 11 membre 21 membre 21 message msg 15 metsdernier md 19 metspremier mp 19 moins 17 montr
27. etortue mt 13 mot 19 mot 21 nettoie 13 noir 11 nombre 21 nompolice np 15 nompolicetexte npt 16 non 18 orange 11 origine 12 ou 18 ouvreflux 25 phrase ph 19 pi 17 point 13 pos 13 possouris 36 pour 22 precede 21 premier prem 19 primitive prim 21 procedure proc 21 produit 17 puissance 17 quotient 17 racine rac 17 rafraichis 13 ramene 25 recule re 12 remplace 19 remplis 28 rempliszone 28 repertoire rep 25 repete 33 repetepour 33 reste 17 retourne 30 rose 11 rouge 11 rougefonce 11 saufdernier sd 19 saufpremier sp 19 sauve 25 sauved 25 separation sep 15 sequence seq 31 si 22 sinus sin 17 somme 17 souris 36 stop 30 stoptout 30 sty style 16 taillepolice tp 14 taillepolicetexte tpt 16 tangente tan 17 tantque 34 tape 16 temps 38 tortue 31 tortues 31 touche 35 tournedroite td 12 tournegauche tg 12 trace 23 tronque 17 trouvecouleur tc 14 tuetortue 31 unicode 20 vers 13 vert 11 vertfonce 11 vide 21 videecran ve 13 violet 11 visible 21 vrai 21 vt videtexte 16 56
28. fface la zone contenant l historique des com Vt videtexte mandes et des commentaires ot liste ou Affiche l argument sp cifi dans la zone d histo ec ecris rique ec mot liste ou Identique la primitive ecris mais ne retourne tap nombre pas la ligne a nombre D finis la taille de la police dans la zone d his ftpt torique Valable uniquement pour la primitive fixetaillepolicatexte Seria aucun Renvoie la taille de la police associ e la primi taillepolicetexte s rie tpt a nombre ou D finis la couleur de la police dans la zone d his liste torique Valable uniquement pour la primitive fixecouleurtexte ecris Voir p 11 Renvoie la couleur de la police associ e la pri PER mitive ecris dans la zone d historique couleurtexte Fixe la police utilis e pour crire dans l histo rique l aide de la primitive ecris Le num ro de la police est rep rable dans Menu gt Options gt Pr f rences gt Onglet Police fixenompolicete fnpt Renvoie une liste compos e de deux l ments Le premier l ment est le num ro repr sentant la police utilis e pour crire l cran l aide de la primitive ecris Le second est une liste contenant le nom de cette m me police nompolicetexte npt liste ou mot Fixe le style du rendu de la police utilis e par la primitive ecris Les diff rents styles pos sibles sont aucun gras italique barre indice exposant souligne Si vous
29. gt Traduction affiche une traduction de ladite licence Cette traduction n a aucune valeur officielle seule la version anglaise a ce r le e Menu gt A propos Classique et http xlogo tuxfamily org pour vos mises jours o Chapitre 3 Conventions adopt es dans XLOGO Voici la pr sentation de certaines choses savoir concernant le langage LOGO lui m me et d autres concernant XLOGO sp cifiquement 3 1 Commandes et interpr tation Le langage LOGO permet de provoquer certains v nements l aide de commandes internes On appelle ces commandes les primitives Chaque primitive attend un certain nombre de param tres que l on appelle arguments Par exemple la primitive ve qui permet d effacer l cran ne prend aucun argument alors que la primitive somme attend deux arguments somme 2 3 crira 5 en retour Les arguments sont de trois types en LOGO e Les nombres certaines primitives attendent des nombres comme argument av 100 est un exemple e Les mots Les mots sont commencent tous par Un exemple de primitive pouvant travailler avec les mots est la primitive ecris ecris bonjour renvoie bonjour noter que si vous oubliez le l interpr teur vous renverra un message d erreur En effet ecris attend un argument or pour l interpr teur bonjour ne repr sente rien puisque ce n est ni un nombre ni un mot ni une liste ni une proc dure d j d finie e Les listes Elles sont d
30. i re couleurfond cf enroule enr fen fenetre La tortue est confin e la zone de dessin Si elle s appr te sortir un message d erreur vous l indiquera et vous donnera le nombre de pas maximum de la tortue avant sortie 1 ou 2 pas pr s a liste Retourne la couleur du pixel de coordonn es a Cette couleur est d termin e l aide d une liste r g b ou r est la composante rouge b la bleue et g la verte n nombre D finit l paisseur de la pointe du crayon en fixetaillecrayon P 4 ES pixel R gl sur 1 par d faut n nombre Vous pouvez choisir de l aspect de la tortue utili s e soit en allant dans Option Pr f rences Choix de la tortue soit l aide de cette primitive Le nombre n doit tre un entier compris entre 0 et 6 0 d signe la forme triangulaire e aucun Renvoie le num ro qui repr sente l image ac orme tuelle de la tortue n entier Lorsqu on crit du texte sur l cran l aide de la primitive etiquette il est possible de modi fier la taille de la police utilis e l aide de cette primitive Par d faut la taille de la police est r gl e 12 aucun Renvoie la taille de la police actuellement utili taillepolice tp ju ue M s e lorsqu on crit avec la primitive etiquette n entier Fixe la police utilis e pour crire l cran laide de la primitive etiquette Le num ro identifiant la police utiliser est rep rable dans Menu gt O
31. ir les instructions apr s le tableau joue aucun Renvoie le num ro correspondant l instrument actuellement s lectionn a nombre S lectionne comme instrument l instrument TIMBRES num ro a Vous pouvez voir la liste des fixeinstrument instruments disponibles dans menu options pr f rence onglet son ftortue fixetortue instr instrument aucun Renvoie quel temps le curseur est situ dans indseq la s quence en cours indexsequence a nombre D place le curseur au temps num ro a dans la findseq s quence musicale actuellement en m mooire fixeindexsequence aucun Efface la s quence actuellement en m moire efseq effacesequence Pour jouer de la musique il faut mettre au pr alable la composition d sir e en m moire dans ce que l on appellera ici une s quence musicale On cr e la s quence l aide de la commande seq ou sequence Voici les quelques r gles respecter pour crire convenablement une s quence musicale do re mi fa sol la si d signent les notes usuelles de la premi re octave Pour faire un r di se on tapera re Pour faire un re b mol on tapera re Si on veut changer d octave on utilise le symbole suivit de ou Par exemple apr s avoir tap toutes les notes jou es seront augment es de deux octaves il y a deux Les notes sont par d faut jou es sur une dur e de un temps Si on veut changer la dur e d une s rie de notes on l indique par le no
32. la racine carr e de n racine rac n nombre renvoie le logarithme d cimal de n log10 a nombre renvoie le sinus du nombre a a est exprim en degr sinus sin a nombre Renvoie le cosinus du nombre a a est exprim en degr cosinus cos a nombre Renvoie le tangente du nombre a a est exprim en degr tan tangente Renvoie l angle dont le cosinus vaut a l angle est exprim acos arccosinus en degr Renvoie l angle dont le sinus vaut a l angle est exprim asin arcsinus en degr a nombre Renvoie l angle dont la tangente vaut a l angle est ex atan arctangente prim en degr Renvoie le nombre z 3 141592653589793 pi n entier Renvoie un nombre al atoire compris entre 0 et n 1 hasard n nombre Renvoie la valeur absolue distance z ro du nombre absolue abs propos 17 Remarque Attention aux primitives n cessitant deux param tres Ex fixexy a b Si b est n gatif Par exemple fixexy 200 10 L interpr teur logo va effectuer l op ration 200 10 Il va donc consid rer qu il n y a qu un param tre 190 alors qu il lui en faut deux d o un message d erreur Pour viter ce type de probl me utiliser la primitive moins indiquant l oppos fixexy 200 moins 10 et l il n y a plus de probl mes Une autre possibilit peut tre d utiliser les parenth ses en tapant fixexy 200 10 Voici la liste des op rateurs logiques Primitives Param tres Uti
33. lisation ar PE bool ens Renvoie vrai si a ou EE est vrai sinon renvoie faux b bool ens Renvoie vrai si a et b sont gaux vrai sinon HA a bool ens Renvoie la n gation de a Si a est vrai renvoie s faux Si a est faux renvoie vrai 18 4 4 Op rations sur les listes et les mots Concat ne les deux mots a et b mot e Exemple ec mot a 1 renvoie a1 Retourne une liste compos e de a et b Par exemple liste liste 3 6 renvoie 3 6 liste une liste renvoie une liste Retourne une liste compos e de a et b Si a ou b est une liste alors chacun des composants de a ou b devient l ment de la liste cr e les crochets sont supprim s Ex ph 4 3 bonjour renvoie 4 3 bonjour ph comment a va renvoie comment a val phrase ph a b a quel Ins re a en premi re position de la liste b metspremier mp conque b liste Ex mp coucou 2 renvoie coucou 2 a b a quel Ins re a en derni re position de la liste b metsdernier md conque b liste Ex md 5 7 9 5 renvoie 7 9 5 5 a liste Inverse l ordre des l ments de la liste a inverse o TT inverse 1 2 3 renvoie 3 2 1 a a mot ou Si a est un mot renvoie une des lettres de a au ha choix liste sard Si a est une liste renvoie un des l ments de a au hasard a b a quel Enl ve l l ment a de la liste b s il appara t dedans enleve conque b liste Ex enleve 2 1 23 42 6 renvoie 1 3 46 a b
34. mbre indiquant la dur e d sir e Pour taper une s rie de croches 5 temps on tapera seq 0 5 sol la sil Un bon exemple valant mieux que mille explications nm mm 31 pour tabac Met en m moire sequence 0 5 sol la si sol 1 la O sequence 1 re 0 5 re do sequence 1 re 0 5 re do sequence 0 5 sol la si sol 1 la O fin la partition la 0 5 la si 1 do do si si 0 5 sol la si sol do re 2 sol s si 0 5 la si 1 do re 2 la si 0 5 la si 1 do re 2 la la 0 5 la si 1 do do si si 0 5 sol la si sol do re 2 sol 1 5 la si 1 1 1 1 5 la si 1 Pour lancer la musique il ne nous reste plus qu taper tabac joue Voyons pr sent une application int ressante de la primitive findseq Taper les commandes suivantes efseq On tabac On findseq 2 On tabac On joue Un efface la s quence actuellement en m moire recharge la musique pr c dente replace le curseur au niveau du premier la noir de la 2nde mesure recharge la m me s quence mais d cal e de deux temps magnifique canon Vous pouvez galement changer d instruments soit l aide de la commande finstr soit dans le menu Options Pr f rences Onglet son Vous trouverez la liste de tous les instruments disponibles avec leur num ro C est disponibles en anglais mais a permet de se donner une id e Chez moi 411 instruments 32 4 13 Boucles XLOGO dispose de trois
35. mot vrai si le crayon est baiss faux sinon proc procedure 21 4 6 Effectuer un test l aide de la primitive si Comme dans tout langage de programmation le Logo offre la possibilit de v rifier si une condition donn e est vraie ou fausse afin d ex cuter le bout de code associ La primitive si permet de r aliser ces tests Voici sa syntaxe si expression_test listel liste2 Si l expression test est vraie alors les commandes situ es dans la liste 1 seront ex cut es En revanche si cette expression est fausse alors ce sont les commandes de la liste 2 qui seront ex cut es La deuxi me liste d intruction est optionnelle Exemples d utilisation e si 1 2 3 ecris vrai ecris faux e si premier XLOGO Y av 100 td 90 ec XLOGO commence par un X e si 3 4 6 6 ec 12 4 7 Gestion des proc dures et des variables 4 7 1 Les proc dures Les proc dures sont des sortes de programmes l appel de leur nom les instructions comprises dans le corps de la proc dure sont ex cut es On d finit une proc dure l aide du mot cl pour pour nom_de_la_proc dure vil v2 v3 Corps de la proc dure fin nom_de_la_proc dure est le nom donn e la proc dure vl v2 v3 repr sentent les variables utilis es au sein de cette proc dure variables locales Corps de la proc dure repr sente les instructions ex cuter l appel de cette proc dure Ex pour carre
36. mple on tape fcc 1 remplis FIG 4 2 Avec la primitive remplis Revenons pr sent au premier cas Si la couleur du crayon de la tortue est le noir la primitive rempliszone colorie tous les pixels voisins jusqu rencontrer la couleur en cours ici noire Voici un bel exemple d utilisation de la primtive remplis pour demice c trace un demi cercle de diam tre c repete 180 av c tan 0 5 td 1 av c tan 0 5 td 90 av c fin pour arcenciel c 28 FIG 4 3 Avec la primitive rempliszone en tapant fcc O rempliszone si c lt 100 stop demice c td 180 av 20 tg 90 arcenciel c 40 fin pour dep lc td 90 av 20 tg 90 bc fin pour demarrer ct arcenciel 400 go tg 90 av 20 re 120 de lc td 90 av 20 bc fcc O remplis dep fcc 1 remplis dep remplis dep remplis dep 1 fcc 2 3 fcc 4 remplis dep 5 6 fcc fcc 5 remplis dep fcc 6 remplis dep fin 29 FIG 4 4 Arc en LOGO 4 10 Les instructions de saut XLOGO poss de trois instructions de saut stop stoptout et retourne e stop peut avoir deux effets s il est inclus dans une boucle repete ou tantque ce moment l on sort de la boucle S il est dans une proc dure on sort imm diatement de la proc dure e stoptout interrompt d finitivement l ex cution de toutes les proc dures en cours e retourne permet de sortir d une proc dure en retournant une valeur Voir les nombreux cas d utilisation des deux primitives st
37. n 5 dep 5 maison 7 dep 7 maison 10 fin 42 5 2 Dessiner un rectangle plein FIG 5 2 Rectangle pour rec lo la si lo 0 la 0 stop repete 2lav lo td 90 av la td 90 rec lo 1 la 1 fin 5 3 Factorielle Rappel 5 5 x 4 x 3 x 2 x 1 120 pour fac n si n 0 ret 1 ret n fac n 1 fin ec fac 5 120 ec fac 6 720 5 4 Le flocon Merci Georges No l pour koch ordre lon si ordre lt 1 lon lt 1 avance lon stop koch ordre 1 lon 3 tg 60 koch ordre 1 lon 3 td 120 koch ordre 1 1on 3 tg 60 koch ordre 1 lon 3 fin 43 pour kochflake ordre lon repete 3 td 120 koch ordre lon fin kochflake 5 450 FIG 5 3 Le flocon 44 5 5 Un peu d criture pour ecrire ct repete 40 av 30 td 9 fcc hasard 7 etiquette xlogo c est sympa fin Ge Ki TL m LA z CH E FIG 5 4 Xlogo c est sympa 45 5 6 Et de conjugaison 5 6 1 Premi re version pour futur mot ec ph je mot mot ai ec ph tu mot mot as ec ph il mot mot a ec ph nous mot mot ons ec ph vous mot mot ez ec ph elles mot mot ont fin futur parler je parlerai tu parleras il parlera nous parlerons vous parlerez elles parleront 5 6 2 Deuxi me mouture pour fut mot donne pronoms je tu il nous vous elles donne terminaisons ai as a ons ez ont donne i O repete 6 donne i i 1 ec ph item i pronoms mot mot item i terminaiso
38. n des proc dures et des variables ATI Les procedures 4 aca ui sua AL a amende Le lan DAR e ae er du at d he 4 7 2 Notion de variables 2 24 4 aaya 126506 gas e aa as 4 done Aia Laprimitive EENEG 4 8 Gestion des Fichiers 2 134 8 4 44 duan ae din a e NEE e A mot 4 9 Fonction avanc e de remplissage 4 10 Les instructions de saut 4 11 Le mode multitortles cesos ae ge pie ep ee Grp En gran guet 4 12 Jouer de la musique o 544 ER a ga pa a bee deb au pen E a ea be 413 Boucles E i 44 he Tet B re e t NUS AMEN CAN a OR Se a ua 413 1 Une boucle avec repete 4 13 2 Une boucle avec repetepour 4 13 3 Une boucle avec tantque 4 14 Intercepter des actions de l utilisateur 4 14 1 Interaction avec le clavier 4 gt 4 4 codda a 2 2 35 4 14 2 Quelques exemples d utilisation 35 4 14 3 Intercepter certains v nements provenant de la souris 36 4 14 4 Quelques exemples d utilisation 36 4 15 Gestion du temps ess 4 s secsi aae ds aa me da don d be Reset ue 38 4 16 Se servir du r seau avec XLogo 39 4 16 1 Le r seau comment a marche 39 4
39. ns fin fut parler je parlerai tu parleras il parlera nous parlerons vous parlerez elles parleront 5 6 3 Ou alors Un peu de r cursivit pour fu verbe donne pronoms je tu il nous vous elles donne terminaisons ai as a ons ez ont conjugue verbe pronoms terminaisons fin 46 pour conjugue verbe pronoms terminaisons si vide pronoms stop ec ph premier pronoms mot verbe premier terminaisons conjugue verbe sp pronoms sp terminaisons fin fu parler je parlerai tu parleras il parlera nous parlerons vous parlerez elles parleront 5 7 Avec les couleurs 5 7 1 Introduction Tout d abord quelques explications vous remarquerez que la commande fcc prend soit en para m tre une liste soit un nombre Ici nous allons nous int resser au codage r g b Qu sako Chaque couleur dans XLOGO est cod e sur trois composantes la rouge red la verte green et la bleue blue d o le nom de ce codage r g b Les trois nombres donn s dans la liste la primitive fcc repr sentent donc dans l ordre la composante rouge puis la verte puis la bleue d une couleur Ce codage n tant pas tr s intuitif vous pouvez avoir un aper u de la couleur obtenue selon le codage l aide la bo te de dialogue Options gt Choisir la couleur du crayon A l aide de ce codage il est tr s facile d effectuer des transformations sur une image Par exemple si l on veut mettre en niveau de gris une photo c
40. ns ce fichier Cette primi tive renvoie un nombre repr sentant la valeur du caract re semblable liscar id liste Ecris la ligne de texte contenue dans la liste la fin du fichier ajouteligneflux A y e rep r par l identifiant id Attention l criture n est effective que lorsque l on ferme le flux avec la primitive fermeflux i Ferme le flux dont le num ro d identifiant est celui pass en fermeflux argument i Renvoie vrai si on est arriv la fin du fichier Renvoie finflux faux sinon Voici un exemple d utilisation des primitives permettant de lire et crire dans un fichier Nous pr senterons cet exemle pour une architecture de type Windows Les autres utilisateurs sauront adapter l exemple suivant id id o id liste Ecris la ligne de texte contenue dans la liste au d but du fi ecrisligneflux Pe Arms gt chier rep r par l identifiant id Attention l criture n est effective que lorsque l on ferme le flux avec la primitive fermef lux id id L objectif est de cr er le fichier c exemple contenant les trois lignes ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 0123456789 On ouvre un flux vers le fichier d sir Ce flux sera rep r par le num ro 2 fixerepertoire c ouvreflux 2 exemple On crit les lignes d sir es ecrisligneflux 2 ABCDEFGHIJKLMNOPQRSTUVWXYZ ecrisligneflux 2 abcdefghijklmnopgrstuvwxyz ecrisligneflux 2 012345678
41. ns pour le moment e minimiser la fen tre et la r agrandir e Utiliser le JRE 1 4 1_07 propos sur le site 92 7 5 Comment faire pour taper rapidement une commande d j uti lis e au pr alable Premi re m thode avec la souris cliquer dans la zone d historique sur la ligne d sir e elle r appara tra imm diatement dans la ligne de commande Deuxi me m thode avec le clavier les fl ches Haut et Bas permettent de naviguer dans la liste des derni res commandes tap es Tr s pratique Comment peut on vous aider En reportant tout bug constat Si vous tes capable de reproduire syst matiquement un pro bl me constat c est encore mieux Vos suggestions en vue de l am lioration sont toujours les bienvenues En aidant aux traductions en particulier l anglais Un petit encouragement fait toujours du bien 53 Index absolue abs 17 ajoute 19 ajouteligneflux 26 animation 13 arc 12 arccosinus acos 17 arcsinus asin 17 arctangente atan 17 arrondi 17 attends 38 avance av 12 baissecrayon bc 13 baissecrayon bc 21 blanc 11 bleu 11 bleufonce 11 cachetortue ct 13 cap 13 caractere car 20 catalogue cat 25 cercle 12 changedossier cd 25 chargeimage ci 25 chattcp 40 choix 19 chose 24 clos 14 compte 20 compteur 33 cosinus cos 17 couleurcrayon cc 14 couleurfond cf 14 couleurtexte ctexte 16 cyan 11 date 38 debuttemps 38 d
42. nt Cette commande ne fonctionne pas avec un chemin absolu chargeimage ci Ouvre et interprete le fichier m Par exemple pour effacer toutes les proc dures d finies et charger le fichier essai lgo on crira efns charge essai lgo Le mot sp cifi d signe un chemin relatif par rapport au r pertoire courant ramene Cette commande ne fonctionne pas avec un chemin absolu ars Bla id fich ere l on veut lire ou crire dans un fichier il faut au pr alable ouvrir un flux vers ce fichier L argument fich doit tre le nom du fichier consid r On doit utiliser un mot pour indiquer le le nom du fichier dans le r pertoire courant L argument id est le num ro que l on affecte ce flux afin de pouvoir l identifier 25 m mot sauved test lgo sauve dans le fichier test lgo du r per sauved S Le toire courant l ensemble des proc dures d finies actuelle ment Si l extension lgo est omise elle est rajout e par d faut Le mot sp cifi d signe un chemin relatif par rapport au r pertoire courant Cette commande ne fonctionne pas avec un chemin absolu Utilisation E aucun Affiche la liste des diff rents flux ouverts avec leur identi listeflux fiant SE i Ouvre le flux dont l identifiant est le num ro pass en argu lisligneflux SE E ment puis lis une ligne dans ce fichier i A Ouvre le flux dont le num ro d identifiant est celui pass en liscarflux SE A 0 argument puis lis un caract re da
43. op et retourne dans les exemples la fin du manuel 4 11 Le mode multitortues Il est possible de piloter l cran plusieurs tortues la fois Par d faut lorsqu on lance XLOGO une seule tortue est active Elle est rep r e par le num ro 0 Pour cr er une nouvelle tortue l cran on utilise la primitive fixetortue suivi du num ro de la tortue d sir e Pour vitement l encombre ment sur la fen tre de dessin celle ci est cr e l origine de la zone de dessin coordonn es 0 0 et est invisible c est dire qu il faudra se servir de la commande mt pour la faire appara tre Ensuite cette nouvelle tortue ob it aux ordres classiques tant que l on ne change pas de tortue avec fixetortue Le nombre maximal de tortues disponibles se r gles dans Options Pr f rences Onglet options Voici la liste des primitives concernant le mode multitortues 30 Primitives Param tres Utilisation a nombre D termine le num ro de la tortue active Par d faut la premi re tortue active au lancement de XLOGO ale num ro 0 Pr Renvoie le num ro de la tortue actuellement uti tortue lig e aucun Renvoie une liste compos e de tous les num ros tortues LU des tortues actuellement utilis es RS RS Unit tuetortue 4 12 Jouer de la musique Primitives Param tres Utilisation a liste Met en m moire la s quence musicale situ e Seq Sequence dans la liste Pour apprendre r diger s quence musicale vo
44. ouleur on change la couleur de chaque pixel de l image en la moyenne des trois composantes r g b Je m explique imaginons qu un point de l image est pour couleur 0 100 80 On calcule la moyenne de ces 3 nombres 04109480 60 On r affecte alors ce pixel la couleur 60 60 60 Cette op ration doit tre effectu e sur chaque pixel de l image 5 7 2 Passons la pratique Nous allons transformer en niveau de gris une image de 100 pixels sur 100 pixels il y aura donc 100 x 100 10000 pixels modifier Vous pouvez trouver l image utilis e dans l exemple suivant l adresse http xlogo tuxfamily org images transfo png Voici comment nous allons proc der nous allons afficher l image avec le coin sup rieur gauche en 0 0 Ensuite la tortue va d crire les 100 premiers pixels de la premi re ligne puis les 100 premiers de la deuxi me etc A chaque fois on rapatrie la couleur du pixel avec trouvecouleur puis on modifie la couleur en faisant la moyenne des trois composantes r g b Voici le code correspondant N oubliez pas de changer le chemin dans la proc dure transfo 47 pour li liste renvoie la moyenne des trois nombres r g b donne r premier liste donne liste sp liste donne g premier liste donne liste sp liste donne b premier liste donne b arrondi r g b 3 retourne ph liste b b b fin pour niveaudegris c si y 100 stop si c 100 donne c O donne y y 1 On prend p
45. our couleur de crayon la couleur moyenn e du pixel suivant fcc li tc liste c y On repasse en niveau de gris point liste c y niveaudegris c 1 fin pour transfo Vous devez changer le chemin vers l image transfo png Ex frep c windows chargeimage transfo png ve ct frep home loic chargeimage transfo png donne y O niveaudegris 0 fin AY ANT APRES FIG 5 5 XLOGO fait de la retouche d images 5 7 3 Et si on la voyait en n gatif Pour changer une image en n gaitf m me proc d sauf qu au lieu de moyenner les nombres r g b on les remplace par leur compl ment 255 Ex Un pixel a pour couleur 2 100 200 on remplace sa couleur par 253 155 55 Seul la proc dure 1i change par rapport tout de suite 48 pour niveaudegris c si y 100 stop si c 100 donne c O donne y y 1 fcc li tc liste c y point liste c y niveaudegris c 1 fin pour transfo Vous devez changer le chemin vers l image transfo png Ex frep c windows Bureau chargeimage transfo png ct ve frep home loic ci transfo png donne y O niveaudegris O fin pour li liste donne r premier liste donne liste sp liste donne g premier liste donne liste sp liste donne b premier liste retourne ph liste 255 r 255 g 255 b fin AY ANT APRES FIG 5 6 XLOGO se prend pour LE GIMP pr tentieux o 5 8 Un bel exemple d utilisation des listes Merci Olivier SC Je vous laiss
46. ouvre alors sur chacun des ordinateurs e envoietcp Envoie des donn es vers un ordinateur du r seau puis renvoie la r ponse de l autre ordinateur Syntaxe envoietcp mot liste gt Le mot d signe l adresse IP ou le nom de l ordinateur ap pel la liste contient les donn es envoyer Si la communication se fait avec un autre ordinateur o XLogo est lanc cet ordinateur r pondra OK une fois l op ration termin e Il est galement possible de dialoguer avec un robot muni d une interface r seau la r ponse pourra tre diff rente ce moment Exemple tortue veut envoyer lievre la s quence 3 14159 presque le nombre pi lievre lance ecoutetcp pour se mettre en attente de requ te d ordinateurs du r seau tortue lance alors ecris envoietcp lievre 3 14159 presque le nombre pil Une petite astuce Lancer deux fois XLogo sur le m me ordinateur Dans la premiere fen tre lancer ecoutetcp Dans la seconde lancer executetcp 127 0 0 1 av 100 td 90 Vous avez ainsi d placer la tortue sur l autre fen tre h oui 127 0 0 1 d signe l adresse locale donc l ordinateur lui m me 40 Chapitre 5 Exemples de programmes 5 1 Dessiner des maisons AP FIG 5 1 Maisons pour maison c repete 4 av 20 c td 90 av 20 x c td 30 repete 3 av 20 c td 120 fin pour dep c lc tg 30 re cx20 td 90 av cx 22 tg 90 bc 41 fin pour mai ve lc tg 90 av 200 td 90 bc ct maison 3 dep 3 maiso
47. primitives permettant d effectuer des boucles repete repetepour et tantque 4 13 1 Une boucle avec repete Voici la syntaxe de repete repete n liste_d_instruction n est un entier et liste_d_instruction est une liste contenant des instruction ex cuter L inter pr teur LOGO va effectuer n fois les commandes contenues dans la liste cela vite ainsi de recopier n fois la m me instruction Ex repete 4 avance 100 tournegauche 90 Un carr de c t 100 repete 6 avance 100 tournegauche 60 Un hexagone de c t 100 repete 360 avance 2 tournegauche 1 Un euh 360 gone de c t 2 Bref quasiment un cercle Au sein d une boucle repete est d finie une variable interne compteur Celle ci d signe le num ro de Pit ration en cours la premi re it ration tant num rot e 1 repete 3 ec compteur 1 2 3 4 13 2 Une boucle avec repetepour repetepour joue le r le des boucles for dans d autres langages de programmation Elle consiste affecter une variable un certain nombre de valeurs comprises dans un intervalle donn suivant un incr ment donn Voici sa syntaxe repetepour listel liste2 La liste 1 contient trois param tres le nom de la variable la borne initiale la borne finale On peut rajouter un quatri me argument optionnel d signant l incr ment le pas avec lequel la variable d file S il est omis il est par d faut de 1 Quelques exemples d utilisation repetepour i 1 4 ec
48. ptions gt Pr f rences gt Onglet Po lice trouvecouleur tc fforme fixeforme fixetaillepolice ftp fixenompolice fnp 14 aucun Renvoie une liste compos e de deux l ments Le premier est le num ro correspondant la po lice utilis e pour crire l aide de la primitive etiquette Le second est une liste contenant le nom de cette m me police nompolice np a nombre D termine le ratio entre la fen tre graphique et la zone d historique Le nombre a doit tre compris entre O et 1 Lorsqu il vaut 1 la zone de dessin occupe toute la place lorsqu il vaut 0 la zone d historique occupe toute la fen tre etc aucun Renvoie le ratio actuel entre la zone de dessin et separation se P Sep la zone d historique Affiche un message d information dans une boite de dialogue l ex cution du programme est stopp en attente d un click sur OK fixeseparation fsep message Ceci message msg est un message d information Le texte est automatiquement dispos sur plusieurs lignes afin qu il soit bien lisible De plus le programme reste en attente que l on appuie sur OK 4 2 Affichage du texte dans la zone d historique Ce tableau regroupe les primitives associ es la zone de texte d historique Toutes les primitives concernant la taille et la couleur de la police utilis e ne sont valables que pour le rendu de la primitive ecris 15 Primitives Param tres Utilisation aucun E
49. r une t che des intervalles fix s Utilisation n entier Bloque le programme et donc la tortue pendant attends Sege n 60 de secondes n entier Lance un compte rebours de n secondes On debuttemps Se S se peut savoir si le compte rebours est termin l aide de la primitive fintemps aucun Rend vrai si aucun compte rebours n est ac fintemps A tif Rend faux si le compte rebours n est pas termin Jate aucun Renvoie une liste form de trois entiers repr sentant la date Le premier indique le jour le second le mois et le dernier l ann e gt jour mois ann e h aucun Renvoie une liste de trois entiers repr sentant REES l heure Le premier entier repr sente les heures le second les minutes et le dernier les secondes gt heure minute seconde TER aucun Renvoie le temps coul depuis le d marrage de XLogo Ce temps est exprim en secondes Voici une petite proc dure exemple pour horloge affiche l heure sous forme num rique on actualise l affichage toutes les 5 secondes si fintemps ve fixepolice 75 ct donne heu heure donne h premier heu donne m item 2 heu affichage deux chiffres des minutes on rajoute le 0 si m 10 lt 0 donne m mot O ml donne s dernier heu affichage deux chiffres des secondes si s 10 lt 0 donne s mot O s etiquette mot mot mot mot h m s debuttemps 5 1 horloge fin 38 4 16 Se
50. re 65 renvoie A 20 4 5 Bool ens Un bool en est une primitive qui renvoie le mot vrai ou le mot faux Ces primitives se terminent par un point d interrogation Param tres Utilisation vrai faux mot EH KEE Renvoie vrai si a est un nombre faux sinon nombre entier SE Renvoie vrai si a est une liste faux sinon liste Renvoie vrai si a est une liste vide ou un mot ide i vide vide faux sinon PE Renvoie vrai si a et b sont gaux faux sinon egal a b mots Renvoie vrai si a est avant b dans l ordre alpha Ani precede b tique faux sinon ou Si b est une liste pr cise si a est l ment de b membre Si b est un mot pr cise si a est un caract re de b Si b est une liste recherche a dans cette liste deux cas possibles Si a est dans b renvoie la sous liste g n r e partir de la premi re apparition de a dans b Si a n est pas dans b renvoie le mot faux Si b est un mot recherche le caract re a dans b deux cas possibles Si a est dans b renvoie la fin du mot partir de a Sinon renvoie le mot faux membre o coucou renvoie oucou membre 3 1 2 3 4 renvoie 3 4 membre bc baissecrayon aucun Renvoie le mot vrai si la tortue est visible faux a mot Renvoie vrai si le mot est une primitive de prim E sg XLOGO faux sinon primitive a mot Renvoie vrai si le mot est une proc dure d finie par l utilisateur faux sinon aucun Renvoie le
51. rois primitives lissouris souris et possouris lissouris Bloque le programme jusqu ce qu un v nement souris se produise on entend par v nement souris le fait de d placer la souris ou de cliquer sur l un de ses boutons Une fois l v nement produit lissouris rend un nombre permettant de caract riser l v nement Voici les diff rents codes associ s aux diff rents v nements qu ils repr sentent 0 gt on a d plac la souris 1 gt on a appuy sur le bouton 1 de la souris 2 gt on a appuy sur le bouton 2 de la souris etc Les boutons sont num rot s de la gauche vers la droite en principe possouris Renvoie une liste contenant les coordonn es de la souris lors du dernier v nement intercept souris rend vrai ou faux selon que l on ait agi ou non sur la souris depuis le d but de l ex cution du programme 4 14 4 Quelques exemples d utilisation Dans cette premi re proc dure la tortue suit la souris lorsqu elle se d place sur la zone de dessin pour exemple Si on d place la souris se positionner la nouvelle position si lissouris 0 fpos possouris exemple fin Dans cette deuxi me proc dure c est le m me principe sauf qu il faut cliquer avec le bouton gauche de la souris pour provoquer le d placement de la tortue sur la zone de dessin pour exemple2 si lissouris 1 fpos possouris exemple2 fin Dans ce troisi me exemple nous allons cr er deux boutons
52. souhai tez en utiliser plusieurs la fois les indiquer dans une liste Voir les exemples apr s ce ta bleau aucun Renvoie une liste compos e des diff rents styles style sty actuellement utilis s pour le rendu de la primi tive ecris Quelques exemples pour le formatage du texte avec la primitive ecris fixestyle fsty fixestyle gras souligne ecris bonjour bonjour fsty barre tape texte ray fsty italique tape x fsty exposant ecris 2 texteray x 16 4 3 Op rations arithm tiques et logiques Utilisation a b nombres Additionne les deux nombres a et b puis retourne le r SSES additionner sultat Ex somme 40 60 retourne 100 a b nombres Retourne a b difference soustraire Ex difference 100 20 retourne 80 j a nombre Retourne l oppos de a moins Ex moins 5 retourne 5 Voir la remarque la suite de ce tableau a b nombres Retourne le produit de a par b produit a b nombres Retourne le quotient de a par b div divise divise 15 6 retourne 2 5 a b nombres Retourne le quotient entier de a par b quotient quotient 15 6 retourne 2 a b entiers Retourne le reste de la division de a par b reste a nombre Retourne l entier le plus proche du nombre a arrondi arrondi 6 4 renvoie 6 a nombre tronque l unit le nombre a tronque tronque 6 8 renvoie 6 a b entiers Renvoi a lev la puissance b puissance puissance 3 2 renvoie 9 n nombre renvoie
53. vrai rend la valeur correspondant la touche qui a t la derni re enfonc e A gt 65 B gt 66 C gt 67 tC se Z gt 90 gt 37 ou 226 NumPad gt 38 ou 224 gt 39 ou 227 gt 40 ou 225 Echap gt 27 F1 gt 112 F2 gt 113 vase F12 gt 123 Shift gt 16 Espace gt 32 Ctrl gt 17 Enter gt 10 TAB 4 1 Quelques valeurs de touche Si vous avez un doute par le mot retourn par une touche il vous suffit de taper ec liscar L interpr teur va alors attendre que vous tapiez sur une touche puis vous donnera la valeur correspondante lis liste_titre mot Affiche une bo te de dialogue dont le titre est liste_titre L utilisateur peut alors rentrer une r ponse dans un champ de texte la r ponse sera stock e sous forme de liste dans la variable mot lorqu il validera ou cliquera sur le bouton OK 4 14 2 Quelques exemples d utilisation pour yeuv lis Quelle est ton age age donne age premier age si age lt 18 ec tu es mineur si ou age 18 age gt 18 ec tu es majeur si age gt 99 ec Respect fin pour rallye si touche donne car liscar si car 37 tg 90 si car 39 td 90 si car 38 lav 10 si car 40 re 10 si car 27 stop rallye fin On contr le la tortue avec le clavier on arr te avec Esc 35 4 14 3 Intercepter certains v nements provenant de la souris Pour cela on dispose de t
Download Pdf Manuals
Related Search
Related Contents
TEFAL RK100815 Instruction Manual Untitled User Manual WLxx W-Light Luminaire 12/24VDC precaución - KellySolutions.com Canon MP270 series / MP250 series Manual Règlement - Adictiz Box Copyright © All rights reserved.
Failed to retrieve file