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 LinotteConnexion

Besoin d'un conseil sur la programmation en Linotte ?

Le Deal du moment :
Code promo Nike : -25% dès 50€ ...
Voir le deal

descriptionDe l'aide pour un petit nouveau  EmptyDe l'aide pour un petit nouveau

more_horiz
Bonjour à tous,
Tout nouveau Linottien et sur le forum, je me présente :
Ni informaticien, ni matheux, j'ai fréquenté "Basic" comme tous ceux de mon époque qui ont acheté les premiers ZX81 ou autre Commodore 64. Maintenant à la retraite l'envie de me (re)plonger dans la programmation m'est venu comme à d'autres l'envie de faire des mots croisés ou des sodoku ! C'est alors que j'ai découvert Linotte avec ravissement. Merci à Ronan pour ce travail magnifique et à Wan pour la documentation que je trouve remarquablement bien faite pour le grand débutant que je suis. J'ai du mal avec la doc, comme tous les nouveaux je suppose et c'est pourquoi, sans vouloir être "lourd", j'ai des dizaines de questions à poser. Voici la 1ere, si vous voulez bien m'aider:
[php]prototype
Question est un texte
réponse est un nombre
type question contient question
type reponse contient réponse

principale :
connecteur1 & connecteur2 est un fichier
Q est un casier de question
R est un casier de reponse
n est un nombre
début
ouvre connecteur1 avec "lecture" depuis "c:/temp/questions.txt"
ouvre connecteur2 avec "lecture" depuis "c:/temp/reponses.txt"
décharge Q depuis connecteur1
décharge R depuis connecteur2
ferme connecteur1
ferme connecteur2
demande n
affiche R{n}

Dans le programme ci dessus comment puis je récupérer la valeur de R{n} sous forme de variable numérique pour l'utiliser dans une condition ou une opération ?
Merci[/php]
Dans le programme ci dessus comment puis je récupérer la valeur de R{n} sous forme de variable numérique pour l'utiliser dans une condition ou une opération ?
Merci

descriptionDe l'aide pour un petit nouveau  EmptyRE: De l'aide pour un petit nouveau

more_horiz
Bonjour lebou !

J'espere que tu trouveras ton bonheur avec ce langage.

Voici un exemple qui peut t'aider :

[php]
principale :
nb est un nombre
txt est un texte valant "12"
début
convertis txt en nb
affiche nb
[/php]

La doc de Wam est vraiment riche, reste, de mon côté, à refaire une sorte glossaire avec tous les verbes du langage ...

descriptionDe l'aide pour un petit nouveau  EmptyRE: De l'aide pour un petit nouveau

more_horiz
Merci pour ta réponse J'avais bien tenté le verbe "convertir" mais à priori dans mon exemple l'acteur R{2} n'est ni un nombre, ni un texte mais une espèce. L'exemple ci dessous :
[php]
prototype
nbr est un nombre
type reponse contient nbr

principale :
connecteur est un fichier
R est un casier de reponse
n :: nombre
début
ouvre connecteur avec "lecture" depuis "c:/temp/numeros.txt"
décharge R depuis connecteur
ferme connecteur
R{2} !
n = (R{2})
[/php]
me renvoie l'erreur suivante :
La sémantique de la phrase contenant le verbe 'valoir' est incorrecte, vérifiez le rôle de l'acteur :
acteur
rôle trouvé ESPECE
rôle demandé NOMBRE

descriptionDe l'aide pour un petit nouveau  EmptyRE: De l'aide pour un petit nouveau

more_horiz
Le message d'erreur est clair <img src=" title="Smile" />

Regarde le chapitre sur les espèces dans le tuto de Wam.
Si tu trouves pas, je te donnerai la solution.

descriptionDe l'aide pour un petit nouveau  EmptyRE: De l'aide pour un petit nouveau

more_horiz
Dans la prochaine version, je vais ajouter des exemples pour la lecture et écriture dans les fichiers.

Voici un exemple que je vais intégrer :

[php]
/*
Exemple simple pour écrire et lire du texte dans un fichier !
Plus d'informations ici : http://langagelinotte.free.fr/wiki/inde ... le=Conduit
*/
globale
container est un conduit
// Attention, le répertoire "c:/temp" doit exister !!
localisation est un texte valant "c:/temp/linotte_conduit.txt" // Sous Windows
// localisation est un texte valant "/tmp/linotte_conduit.txt" // Sous Linux

principale :
caractère est un nombre valant 48
début
efface tableau
// Ecriture
container.enregistrer(localisation)
container.écrire("écrivons du bla bla" + container.retourchariot() )
pour 100 lis
container.écrire(chr(caractère))
incrémente caractère
ferme
container.écrire("fin du bla bla !")
container.fermer()
// Lecture
container.ouvrir(localisation)
affiche container.lireligne()
pour chaque 10 affiche container.nlire(10)
affiche container.lireligne()
[/php]


On obtient sur le tableau :


écrivons du bla bla
0123456789
:;
<
=>
?@ABC
DEFGHIJKLM
NOPQRSTUVW
XYZ[\]^_`a
bcdefghijk
lmnopqrstu
vwxyz{|}~
fin du bla bla !



Voici un autre exemple encore plus simple :
[php]
/*
Exemple simple pour écrire et lire du texte dans un fichier !
Plus d'informations ici : http://langagelinotte.free.fr/wiki/inde ... le=Conduit
*/
globale
container est un conduit
// Attention, le répertoire "c:/temp" doit exister !!
localisation est un texte valant "c:/temp/linotte_conduit1.txt" // Sous Windows
// localisation est un texte valant "/tmp/linotte_conduit1.txt" // Sous Linux

principale :
efface tableau
// Ecriture
container.enregistrer(localisation)
container.écrire("je veux écrire du texte dans un fichier !")
container.fermer()
// Lecture
container.ouvrir(localisation)
affiche container.lire() // Lecture du fichier en entier
[/php]

descriptionDe l'aide pour un petit nouveau  EmptyDe l'aide pour les espèces

more_horiz
Je ne me suis pas pressé pour revenir sur le forum car suite à ta réponse j'ai bien compris que si je confond "l'espèce" et son "attribut"" ça peut pas fonctionner ! J'avais donc pas vu que tu as rajouté deux exemples sur l'écriture et la lecture d'un fichier. C'est super mais sans glossaire sur les fonctions des espèces, tout seul je rame un peu!! Dépiauter les exemples ça aide mais on est vite perdu dans les différentes versions de Linottes. En tout cas merci de continuer à faire vivre ce langage.

descriptionDe l'aide pour un petit nouveau  EmptyRE: De l'aide pour un petit nouveau

more_horiz
Bonjour,

tu as bien la dernière version de l'Atelier ?

pour comprendre les espèces, as-tu regarder le tuto de Wam :

http://langagelinotte.free.fr/wordpress/?page_id=120

descriptionDe l'aide pour un petit nouveau  EmptyRE: De l'aide pour un petit nouveau

more_horiz
Je reviens sur ce topic car j'avais cru avoir résolu mon problème alors que je l'avais simplement contourné. je repose la question différemment : Je crée une "espèce" que je nomme "réponse" et qui contient 4 attributs, r1,r2,r3,r4 qui sont des variables texte. J'ai un casier de "réponse" qui contient, par exemple 20 "espèces réponse" et que je nomme "R" . pour afficher les 4 attributs de l'espèce réponse numéro 12, j'écris : Affiche R{11}. Maintenant, comment récupérer les 4 variables de R{11} sous forme de texte pour les afficher sur la toile grâce à l'instruction "projette parchemin";
Merci de votre aide.

descriptionDe l'aide pour un petit nouveau  EmptyRE: De l'aide pour un petit nouveau

more_horiz
J'aime bien voir des nouveaux membre sur le forum <img src=" title="Smile" />

descriptionDe l'aide pour un petit nouveau  EmptyRe: De l'aide pour un petit nouveau

more_horiz
privacy_tip Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
power_settings_newSe connecter pour répondre