A$=INPUT$(1)
- 24 réponses
- 3 participants
- 1 796 vues
- 2 followers
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
12 Juin 2016 à 15:33A$=INPUT$(1)#1
Salut!
J'étais entrain de créer un logiciel (grand nom pour peu de choses: je suis entrain de faire un éditeur de texte
) quand j'ai eu un problème.
Pour entrer des variables, j'utilise ce genre de mise en forme:
10 PRINT "Texte souligné? (Y/N)";
20 A$=INPUT$(1)
30 IF A$="Y" GOTO 40 ELSE GOTO 50
40 GOTO 100
50 IF A$="N" GOTO 200 ELSE GOTO 60
60 PRINT "Veuillez utiliser seulement les lettres Y ou N" : GOTO 10
100 STOP
200 STOP
Bref, ça fonctionne.
Le problème est que quand je veux enregistrer une variable de... Je sais pas, 10 caractères, il ne prend en compte que la première touche enfoncée... Ex:
Entrez votre phrase ici: S eule la lettre S a été enregistré. Ce texte en italique ne s'affiche pas.
Alors je me suis dis que si je mettais A$=INPUT$(2), il enregistrerait les deux premiers caractères... Mais non!
Alors j'ai fait ça: A$=INPUT$(1;2;3) Mais of course, ça n'a pas fonctionné !
J'ai essayé ça:
10 INPUT "Entrez votre texte"; A
20 PRINT A
Mais quand j'ai entré mon texte et que j'ai cliqué sur Enter, il m'a affiché ça:
? Redo from start
Entrez votre texte?
J'arrive pas à lui faire comprendre que tout le texte est la variable A
Comment faire ????????
Avez-vous compris mon problème?
Aidez-moi !
J'étais entrain de créer un logiciel (grand nom pour peu de choses: je suis entrain de faire un éditeur de texte
Pour entrer des variables, j'utilise ce genre de mise en forme:
10 PRINT "Texte souligné? (Y/N)";
20 A$=INPUT$(1)
30 IF A$="Y" GOTO 40 ELSE GOTO 50
40 GOTO 100
50 IF A$="N" GOTO 200 ELSE GOTO 60
60 PRINT "Veuillez utiliser seulement les lettres Y ou N" : GOTO 10
100 STOP
200 STOP
Bref, ça fonctionne.
Le problème est que quand je veux enregistrer une variable de... Je sais pas, 10 caractères, il ne prend en compte que la première touche enfoncée... Ex:
Entrez votre phrase ici: S eule la lettre S a été enregistré. Ce texte en italique ne s'affiche pas.
Alors je me suis dis que si je mettais A$=INPUT$(2), il enregistrerait les deux premiers caractères... Mais non!
Alors j'ai fait ça: A$=INPUT$(1;2;3) Mais of course, ça n'a pas fonctionné !
J'ai essayé ça:
10 INPUT "Entrez votre texte"; A
20 PRINT A
Mais quand j'ai entré mon texte et que j'ai cliqué sur Enter, il m'a affiché ça:
? Redo from start
Entrez votre texte?
J'arrive pas à lui faire comprendre que tout le texte est la variable A
Comment faire ????????
Avez-vous compris mon problème?
Aidez-moi !
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
12 Juin 2016 à 17:24#2
Ok visiblement... 
Alors, une autre question pour débloquer: Comment est-ce que vous vous y prenez pour créer des variables?

Alors, une autre question pour débloquer: Comment est-ce que vous vous y prenez pour créer des variables?
0
Anonyme
156
13 Juin 2016 à 08:37 (modifié le 13 Juin 2016 à 08:40)#3
Il faut ajouter $ à ta variable pour préciser que c'est de l'alphanumérique.
10 INPUT "Entrez votre texte" ; A$
10 INPUT "Entrez votre texte" ; A$
0
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
13 Juin 2016 à 17:46#4
Merci pgreslin!
J'aurais voulu l'essayer mais ma sortie vidéo fait des caprices, ce qui fait que j'essayerais ça dès que la prise sera réparée!
J'aurais voulu l'essayer mais ma sortie vidéo fait des caprices, ce qui fait que j'essayerais ça dès que la prise sera réparée!
0
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
25 Juin 2016 à 18:07#5
Merci!
Ça fonctionne!
Autre question :
Comment demander au CX5MII de compter le nombre de caractères d'une variable?
Par exemple, dans une variable ´text' où il y a 6 lettres, qu'il sache qu'il y a 6 caractères....
Merci d'avance!
D-B.
Ça fonctionne!
Autre question :
Comment demander au CX5MII de compter le nombre de caractères d'une variable?
Par exemple, dans une variable ´text' où il y a 6 lettres, qu'il sache qu'il y a 6 caractères....
Merci d'avance!
D-B.
0
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
26 Juin 2016 à 11:18#6
J'ai trouvé quelque chose qui semble être ce que je recherche:
LEN (chaîne)
Je voudrais attribuer à une variable C$ la longueur de chaîne...
3120 LET C$= LEN (Text1$)
Mais il m'affiche
Type mismatch in 3120...
Est-ce que quelqu'un aurait un peu de temps pour m'expliquer comment faire?
Merci!
LEN (chaîne)
Je voudrais attribuer à une variable C$ la longueur de chaîne...
3120 LET C$= LEN (Text1$)
Mais il m'affiche
Type mismatch in 3120...
Est-ce que quelqu'un aurait un peu de temps pour m'expliquer comment faire?
Merci!
0
soundgeek
2059
AFicionado·a
Membre depuis 12 ans
26 Juin 2016 à 11:33 (modifié le 26 Juin 2016 à 12:03)#7
LEN renvoi un nombre, pas une chaine alpha numérique. Donc il faut enlever le $ au nom de ta variable C, ça devrait aller ..
0
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
26 Juin 2016 à 11:57#8
Merci!
Ça marche!
Ça marche!
0
soundgeek
2059
AFicionado·a
Membre depuis 12 ans
26 Juin 2016 à 12:03#9
Une doc trouvé sur le net :
http://map.grauw.nl/resources/system/msxtech.pdf
(La partie software commence page 45)
0
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
26 Juin 2016 à 14:34#10
Merci encore Soundgeek!
Pourrais tu m'expliquer (toujours si tu as du temps) comment utiliser la fonction STEP?
J'essaie de faire une courbe sinusoïdale...
Pourrais tu m'expliquer (toujours si tu as du temps) comment utiliser la fonction STEP?
J'essaie de faire une courbe sinusoïdale...
0
soundgeek
2059
AFicionado·a
Membre depuis 12 ans
26 Juin 2016 à 14:54#11
Dans une boucle FOR, c'est un paramètre optionnel qui indique de combien est incrémenté la variable de la boucle à chaque passage.
0
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
26 Juin 2016 à 17:21 (modifié le 26 Juin 2016 à 19:05)#12
Hmm...
Comment ferais-tu pour coder un prog. qui ferait ce type de courbe?
Le mien me donne un trait droit:
10 Screen 2
20 x=1 : y=sin(x)
30 x=x+1 : y=sin(x)
40 pset (x,y)
50 Goto 30
Ça me donne ça:
----------------------------------
Comment ferais-tu pour coder un prog. qui ferait ce type de courbe?
Le mien me donne un trait droit:
10 Screen 2
20 x=1 : y=sin(x)
30 x=x+1 : y=sin(x)
40 pset (x,y)
50 Goto 30
Ça me donne ça:
----------------------------------
0
soundgeek
2059
AFicionado·a
Membre depuis 12 ans
26 Juin 2016 à 19:09 (modifié le 26 Juin 2016 à 19:26)#13
sin(x) ça renvoi une valeur entre 0 et 1 ...
0
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
27 Juin 2016 à 14:34#14
Effectivement! J'y avais pas pensé!
J'ai lu un article sur les instructions LOCATE X,Y et ça m'a inspiré.
J'ai voulu faire un petit jeu calqué de Space Invaders et de Missile Command.
Voici le début de mon code:
https://app.box.com/s/evf7fzt4tcsgn5jjc68rr5viok3hy9ro
J'ai un gros problème:
La première partie du code (Jusqu'à la ligne 310) concerne le petit vaisseau qu'on peut déplacer avec les flèches X et Z.
(C'est la variable A$: -=O=- )
La deuxième partie (De 320 à la fin) concerne l'ennemi qui se déplace de gauche à droite au sol (qui ne tire toujours pas de missiles, c'est la variable B$: ).
Voici mon problème: Quand je lance mon code, il tourne en boucle sur la première partie.
Il n'atteint pas la ligne 320 car il y a un GOTO ligne 240.
Question: Comment lancer les deux animations à la fois? (Je ne voudrais pas t'embêter mais là, j'y arrive pas
)
Je suis sûr qu'il ne fallait pas le coder de la sorte, d'où le problème de boucle.
Merci d'avance!
J'ai lu un article sur les instructions LOCATE X,Y et ça m'a inspiré.
J'ai voulu faire un petit jeu calqué de Space Invaders et de Missile Command.
Voici le début de mon code:
https://app.box.com/s/evf7fzt4tcsgn5jjc68rr5viok3hy9ro
J'ai un gros problème:
La première partie du code (Jusqu'à la ligne 310) concerne le petit vaisseau qu'on peut déplacer avec les flèches X et Z.
(C'est la variable A$: -=O=- )
La deuxième partie (De 320 à la fin) concerne l'ennemi qui se déplace de gauche à droite au sol (qui ne tire toujours pas de missiles, c'est la variable B$: ).
Voici mon problème: Quand je lance mon code, il tourne en boucle sur la première partie.
Il n'atteint pas la ligne 320 car il y a un GOTO ligne 240.
Question: Comment lancer les deux animations à la fois? (Je ne voudrais pas t'embêter mais là, j'y arrive pas
Je suis sûr qu'il ne fallait pas le coder de la sorte, d'où le problème de boucle.
Merci d'avance!
0
soundgeek
2059
AFicionado·a
Membre depuis 12 ans
27 Juin 2016 à 15:50 (modifié le 27 Juin 2016 à 17:24)#15
Essai de tout faire dans la meme boucle....
0
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
28 Juin 2016 à 09:54#16
C'est vachement dur
0
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
26 Avril 2017 à 18:01#17
Hey!
Eh bien j'ai enfin quasiment fini un truc chouette qui s'appelle "The Chess-Runner"
Je vais poster une vidéo ici (dans peu de temps) pour te montrer ce que ça donne, et merci pour tes astuces sur les alphanumériques.
Je me suis finalement tourné vers les fonctions SCREEN 2 et DRAW A$
Ca permet de faire des trucs tous colorés avec des formes personnelles
Je suis resté sur l'idée que mon programme doit faire un bloc, et ça marche vachement mieux, merci :D
Si quelqu'un passant par là aurait les ASCII des flèches directionnelles, ça m'arrangerait car j'utilise que ZSQD...
Je pense pas que ce soit du type Windows récent, genre:
Mais bon, merci :D
Eh bien j'ai enfin quasiment fini un truc chouette qui s'appelle "The Chess-Runner"
Je vais poster une vidéo ici (dans peu de temps) pour te montrer ce que ça donne, et merci pour tes astuces sur les alphanumériques.
Je me suis finalement tourné vers les fonctions SCREEN 2 et DRAW A$
Ca permet de faire des trucs tous colorés avec des formes personnelles
Je suis resté sur l'idée que mon programme doit faire un bloc, et ça marche vachement mieux, merci :D
Si quelqu'un passant par là aurait les ASCII des flèches directionnelles, ça m'arrangerait car j'utilise que ZSQD...
Je pense pas que ce soit du type Windows récent, genre:
Citation :
gauche: 224 75
haut: 224 72
droite: 224 77
bas: 224 80
Mais bon, merci :D
0
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
07 Mai 2017 à 21:41#18
0
soundgeek
2059
AFicionado·a
Membre depuis 12 ans
08 Mai 2017 à 11:08#19
Top ! 
0
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
08 Mai 2017 à 11:42#20
Merci ça me touche

0
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
12 Mai 2017 à 21:59#21
Re Soundgeek,
Je voulais savoir un truc que je ne trouve nul part:
Quand j'utilise certains programmes genre MIDI Recorder, on peut utiliser les flèches directionnelles pour commander la souris. Le truc c'est que l'affichage de la souris était fluide, et non saccadé comme ce que j'arrive à faire avec ça:
1 SCREEN 2 : x=10 : Y=20 : A$="D10 R10 U10 L10"
2 FOR I=1 to 15
3 PSET (X,Y) : DRAW A$
4 LET Z1=X : LET Z2=Y
5 LET X=X+1 : LET Y=Y+1
6 GOSUB 10
7 NEXT I
8 LINE (Z1;Z2)-(Z1+10;Z2+10),4,BF
Avec ça, mon petit objet A$ s'affiche, s'efface, se déplace (Sans qu'on le voit), s'affiche, s'efface, se déplace...
Ca me rend un truc saccadé, et puisque je vois que les autres programmes peuvent faire des mouvements fluides, j'aimerais en faire de même.
Est-ce que tu connaitrais une commande telle que cela soit possible?
J'en ai repéré aucune, ça me désespère un peu...
Merci d'avance même si tu ne le sais pas forcément
Je voulais savoir un truc que je ne trouve nul part:
Quand j'utilise certains programmes genre MIDI Recorder, on peut utiliser les flèches directionnelles pour commander la souris. Le truc c'est que l'affichage de la souris était fluide, et non saccadé comme ce que j'arrive à faire avec ça:
1 SCREEN 2 : x=10 : Y=20 : A$="D10 R10 U10 L10"
2 FOR I=1 to 15
3 PSET (X,Y) : DRAW A$
4 LET Z1=X : LET Z2=Y
5 LET X=X+1 : LET Y=Y+1
6 GOSUB 10
7 NEXT I
8 LINE (Z1;Z2)-(Z1+10;Z2+10),4,BF
Avec ça, mon petit objet A$ s'affiche, s'efface, se déplace (Sans qu'on le voit), s'affiche, s'efface, se déplace...
Ca me rend un truc saccadé, et puisque je vois que les autres programmes peuvent faire des mouvements fluides, j'aimerais en faire de même.
Est-ce que tu connaitrais une commande telle que cela soit possible?
J'en ai repéré aucune, ça me désespère un peu...
Merci d'avance même si tu ne le sais pas forcément
0
soundgeek
2059
AFicionado·a
Membre depuis 12 ans
13 Mai 2017 à 00:15 (modifié le 13 Mai 2017 à 00:15)#22
Le langage basic est "interprété", c'est a dire qu'il y a un programme qui va "lire" le texte, et le transformer en code machine avant que ce dernier puisse être exécuté par le processeur. Cela prend pas mal de temps.
Pour aller plus vite, on peut par exemple programmer avec du langage assembleur qui va générer du code machine.
Mais c'est beaucoup plus technique ...
Et pas toujours accessible pour l'utilisateur.
Sinon il y a parfois la possibilité d'appeler une fonction depuis le basic via un appel à une adresse mémoire bien précise.
Un éléments graphiques qui se déplace, on appel ça un "sprite".
Pour aller plus vite, on peut par exemple programmer avec du langage assembleur qui va générer du code machine.
Mais c'est beaucoup plus technique ...
Et pas toujours accessible pour l'utilisateur.
Sinon il y a parfois la possibilité d'appeler une fonction depuis le basic via un appel à une adresse mémoire bien précise.
Un éléments graphiques qui se déplace, on appel ça un "sprite".
0
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
13 Mai 2017 à 09:25#23
Ow d'accord... je vais voir ces sprites...
Tandis que pour l'assembleur, je me demande où est ce que je vais trouver un manuel pour un viel ordi (je suppose que ca a évolué entre temps :D )
Tandis que pour l'assembleur, je me demande où est ce que je vais trouver un manuel pour un viel ordi (je suppose que ca a évolué entre temps :D )
0
Dark Boubou
1020
AFicionado·a
Membre depuis 10 ans
13 Mai 2017 à 14:59#24
C'est bon, j'ai compris les logiques et les syntaxes des sprites, mais je ne comprends pas en fait le language utilisé lors des définitions des sprites: genre SPRITE$ (1) = "U5" me fait afficher une ligne de pixels off/on
J'ai cherché, mais ça ne ressemble apparemment en rien avec le Macro Basic Language ou je sais plus trop quoi...
Est-ce que tu connais ce langage?
J'ai cherché, mais ça ne ressemble apparemment en rien avec le Macro Basic Language ou je sais plus trop quoi...
Est-ce que tu connais ce langage?
0
soundgeek
2059
AFicionado·a
Membre depuis 12 ans
13 Mai 2017 à 17:03 (modifié le 13 Mai 2017 à 17:07)#25
On peut faire pas mal de jeux en mode texte, peut être une meilleur idée d'approfondir encore un peu le basic...
Après il faudrait regarder si il y a un mode graphique basse résolution.
Pour faire des jeux avec des blocs..
Puis en suite en haute résolution ...
Après il faudrait regarder si il y a un mode graphique basse résolution.
Pour faire des jeux avec des blocs..
Puis en suite en haute résolution ...
0
- < Liste des sujets
- Charte