Programmer avec le langage Linotte

Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Programmer avec le langage Linotte

Besoin d'un conseil sur la programmation en Linotte ?

Le Deal du moment : -50%
Casque Pro Gaming HyperX Cloud Alpha Noir et Rouge ...
Voir le deal
49.99 €

4 participants

La fonction "chercher"

avatar
FCas
Junior Member


Messages : 44
Date d'inscription : 2017-02-15

La fonction "chercher" Empty La fonction "chercher"

Message par FCas Wed 24 May - 9:42

Bjr à tous et toutes,

Comment utilise-t-on la fonction "chercher" qui se trouve dans le verbier ?
Si j'en crois l'instruction qui est : cherche ?, position de ? dans ? on doit y apporter des précisions lesquelles sont indiquées par les ?
Pouvez vous me donner un exemple. Peut-on l'employer pour faire des recherches dans les fichiers.txt ?
Merci pour votre réponse.
Cordialement
FC
avatar
XP Rico
Member


Messages : 83
Date d'inscription : 2014-07-12

La fonction "chercher" Empty Re: La fonction "chercher"

Message par XP Rico Thu 25 May - 20:50

Tu trouveras plusieurs exemples dans les tutoriels de l'atelier Smile

En voici l'un d'eux :

Code:
// Dans b_tutoriels/j_expert/PrototypesEditeurs.liv

cherche pos, la position de "" dans ligne

Le premier paramètre est un nombre.
Il permet de déterminer la position numérique de "\" dans le texte@ligne

Tandis que les deux paramètres suivants sont sous forme de "texte".
Ils pourraient, je pense, aussi accepter la forme d'un casier de texte ou d'un fichier par exemple... Wink
avatar
XP Rico
Member


Messages : 83
Date d'inscription : 2014-07-12

La fonction "chercher" Empty Re: La fonction "chercher"

Message par XP Rico Sat 27 May - 8:32

re

Je viens tout juste d'ajouter au Glossaire du forum : le verbe Chercher... Wink
admincpc
admincpc
Site Admin


Messages : 1050
Date d'inscription : 2011-11-03

La fonction "chercher" Empty Re: La fonction "chercher"

Message par admincpc Wed 31 May - 15:06

Verbe que je souhaite supprimer un jour... je trouve sa syntaxe trop lourde... des idées ?
avatar
XP Rico
Member


Messages : 83
Date d'inscription : 2014-07-12

La fonction "chercher" Empty Re: La fonction "chercher"

Message par XP Rico Wed 31 May - 15:52

I/ On pourrait peut-être rendre le paramètre "pos" implicite ?  Idea

L'on n'aurait plus à déclarer "pos", tout en pouvant l'utiliser comme avant...

La syntaxe serait alors de ce type :

Code:
Casiers :
     langages est un casier de textes valant "Java", "C++", "Logo", "Linotte"
     Début
         Cherche "C++" dans langages
         Si pos = 0, affiche "non trouvé"
         Si pos != 0, lis  
             pos vaut pos - 1  // pour retrouver la numérotation originale du casier
             Affiche pos
             Affiche langages {pos}
         Ferme

 Exclamation  Seul inconvénient "pos" ne pourrait plus être utilisé librement comme une variable,
mais il serait affecté de manière constante à l'utilisation exclusive du verbe Chercher.
Ainsi pos deviendrait une variable constante du verbe Chercher.

II/ On pourrait faire de "pos" une variable particulière du verbe Chercher :  Idea

on n'écrira donc plus : "pos est un nombre", mais "pos est un pos".

La syntaxe serait alors de ce type :

Code:
Casiers :
     langages est un casier de textes valant "Java", "C++", "Logo", "Linotte"
     pos est un pos // variable particulière attaché au verbe Chercher
     Début
         Cherche "C++" dans langages
         Si pos = 0, affiche "non trouvé"
         Si pos != 0, lis  
             pos vaut pos - 1  // pour retrouver la numérotation originale du casier
             Affiche pos
             Affiche langages {pos}
         Ferme

La simplification de la syntaxe n'entraîne ici aucun inconvénient... Wink

___

Mais... en parlant de syntaxe, ne serait-il pas envisageable de retrouver "alors" dans les conditions ?  Idea

Code:
Si pos = 0 alors affiche "non trouvé"

Mais c'est juste une idée pour une évolution futur... Smile


Dernière édition par XP Rico le Wed 31 May - 16:34, édité 2 fois
avatar
FCas
Junior Member


Messages : 44
Date d'inscription : 2017-02-15

La fonction "chercher" Empty Re: La fonction "chercher"

Message par FCas Thu 1 Jun - 9:54

J'ai trouvé dans le tuto un programme destiné à remplacer un nom (texte) par un autre en utilisant le verbe chercher.
J'ai tenté d'alléger le code et le résultat n'est pas probant. voir ci-après :

**********
globale
position est un nombre
exemple :
histoire est un texte valant "Le professeur demande à Toto de conjuguer le verbe manger à la première personne de l'indicatif,
du futur et du passé composé. Toto dit :
- Euh... je mange, je mangerai, euh, euh... J'AI PLUS FAIM !"
début
affiche histoire
affiche "*********************"
affiche remplacertous (histoire, "Toto", "nom") // remplacer (texte, quoi, par)
affiche "*********************"
remplacertous : texte, quoi , par
début
cherche position, position de quoi dans texte
tant que position !=-1, lis
texte prend remplacertous (texte, quoi, par)
cherche position, position de quoi dans texte
ferme
retourne texte
******************
A la 25 ème ligne (au niveau "texte prend remplacertous (texte, quoi, par)" ) linotte s'arrête pour indiquer :
ligne 25 la valeur est incorrecte : trop de boucles ou d'appels imbriqués... le livre doit s'arrêter.

Cela n'est-il pas dû à la syntaxe de "chercher" ?
Une idée ?
Merci
avatar
XP Rico
Member


Messages : 83
Date d'inscription : 2014-07-12

La fonction "chercher" Empty Re: La fonction "chercher"

Message par XP Rico Thu 1 Jun - 14:39

non pas vraiment Smile

Code:
globale
   position est un nombre

exemple :
   histoire est un texte valant "Le professeur demande à Toto de conjuguer le verbe manger à la première personne de l'indicatif,
du futur et du passé composé. Toto dit :
- Euh... je mange, je mangerai, euh, euh... J'AI PLUS FAIM !"
   début
      affiche histoire
      affiche "*********************"
      affiche remplacertous(histoire, "Toto", "nom") // remplacer (texte, quoi, par)
      affiche "*********************"

remplacertous : texte, quoi , par
   début
      cherche position, position de quoi dans texte
      tant que position !=0, lis
         texte prend remplacertous (texte, quoi, par)
/*
#########
Attention, il y a ici une imbrication de fonction dans la même fonction
Ce qui explique une erreur système, puisqu'on rentre dans une boucle infernale ;)
#########
*/
         cherche position, position de quoi dans texte
      ferme
      retourne texte

Il s'agit plus d'une boucle infernale à l'intérieur de la fonction remplacertous...
avatar
Wam
Senior Member


Messages : 585
Date d'inscription : 2012-01-11

La fonction "chercher" Empty Re: La fonction "chercher"

Message par Wam Fri 2 Jun - 19:19

Bonjour,

je verrais plutôt ceci :
Code:

Casiers :
    nombres est un casier de textes valant 1, 2, 3, 4
    pos est un nombre
    Début
        pos cherche 2 dans nombres
        Si pos = 0, affiche "non trouvé"
        Si pos != 0, lis 
            pos vaut pos - 1  // pour retrouver la numérotation originale du casier
            Affiche pos
            Affiche nombres {pos}
        Ferme

En fait, le mot "cherche" remplace ici le verbe "vaut".
Qu'en pensez-vous ?

Contenu sponsorisé


La fonction "chercher" Empty Re: La fonction "chercher"

Message par Contenu sponsorisé


    La date/heure actuelle est Tue 30 Nov - 7:55