Basic Casio : Différence entre versions
m (→Débuter en basic Casio) |
m (→Commandes de base) |
||
Ligne 38 : | Ligne 38 : | ||
− | + | * Les conditions : | |
− | ''' | + | '''If''' ''Condition'' // On définit la condition => [SHIFT][VARS][F1][F1] |
− | '''Then''' ''Instructions'' //Les instructions à exécuter si la condition est vraie | + | '''Then''' ''Instructions'' // Les instructions à exécuter si la condition est vraie => [SHIFT][VARS][F1][F2] |
− | '''Else''' ''Instructions'' //Facultatif, instructions à exécuter si la condition est fausse | + | '''Else''' ''Instructions'' // Facultatif, instructions à exécuter si la condition est fausse => [SHIFT][VARS][F1][F3] |
− | '''IfEnd''' //Fin de la condition | + | '''IfEnd''' // Fin de la condition => [SHIFT][VARS][F1][F4] |
− | + | ''Condition'' '''=>''' ''Instruction'' // Plus rapide mais ne permet d’exécuter qu'une seule instruction => [SHIFT][VARS][F3][F3] | |
− | |||
+ | * Les boucles : | ||
− | + | '''While''' ''Condition'' // On définit la condition de la boucle => [SHIFT][VARS][F1][F6][F6][F1] | |
+ | ''Instructions'' // Les instructions à exécuter tant que la condition est vraie | ||
+ | '''WhileEnd''' // Fin de la boucle => [SHIFT][VARS][F1][F6][F6][F2] | ||
− | ''' | + | '''Do''' // Début de la boucle => [SHIFT][VARS][F1][F6][F6][F3] |
− | ''Instructions'' //Les instructions à exécuter tant que la condition est vraie | + | ''Instructions'' // Les instructions à exécuter tant que la condition est vraie |
− | ''' | + | '''LpWhile''' ''Condition'' // On définit la condition de la boucle => [SHIFT][VARS][F1][F6][F6][F4] |
− | + | La différence entre un boucle "While/WhileEnd" et une boucle "Do/LpWhile" est que, si la condition est fausse depuis le début, une boucle "While/WhileEnd" ne fera aucune itération, tandis qu'une boucle "Do/LpWhile" en fera toujours au moins une. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | La différence entre un boucle "While/WhileEnd" et une boucle "Do/LpWhile" est que, si la condition est fausse depuis le début, une boucle "While/WhileEnd" ne fera aucune itération, tandis qu'une boucle "Do/LpWhile" fera toujours au moins une. | ||
Ligne 117 : | Ligne 113 : | ||
'''GetKey''' //Prend une valeur qui correspond à la touche pressée => [SHIFT][VARS][F6][F4][F2] | '''GetKey''' //Prend une valeur qui correspond à la touche pressée => [SHIFT][VARS][F6][F4][F2] | ||
− | |||
− | |||
== Commandes avancées == | == Commandes avancées == |
Version du 1 mai 2014 à 09:05
Sommaire
Présentation du Basic Casio
Le Basic Casio est un langage de programmation simple destiné à la programmation d'algorithmes basiques voir plus complexes par des étudiants ne possédant pas une formation spécialisée. C'est un langage interprété, c'est à dire qu'il est "lu" par un programme spécial pour fonctionner. Les calculatrices Casio possèdent le même langage, mais qui peut ne pas être compatibles entre certaines calculatrice, comme la Prizm (FX-CG10/20), ou encore la Classpad.
Le Basic Casio, initialement destiné aux algorithmes, a vite été détourné afin de programmer des jeux sur les calculatrices. Toutefois, l'interprétation du basic reste beaucoup plus lente que celle du Lua (voir LuaFx), et est beaucoup plus lente que l'exécution du C (voir le système de développement des SDK).
C'est pour cela que les jeux en basic les plus agréables sont les jeux de réflexion, où la lenteur du Basic n'est pas gênante.
Créer un nouveau programme
A partir du menu de la calculatrice, aller dans le menu PRGM (touche '9' pour les Graph 35+(USB) et 'B' pour les autres). Les onglets qui apparaissent en bas de la fenêtre permettent de gérer les programmes. Les commandes sont les suivantes.
- EXE : Permet de lancer le programme.
- EDIT : Donne accès à l'éditeur de code pour modifier le programme.
- NEW : Crée un nouveau programme.
- DEL : Supprime (après confirmation) le programme sélectionné. Aussi accessible par la touche "DEL" du clavier.
- DEL-A : Supprime (après confirmation) tous les programmes.
- SRC : Permet d'effectuer une recherhce dans la liste des programmes.
- REN : Renomme le programme sélectionné.
En appuyant sur [F3], on crée un nouveau programme. Le bouton "BASE" permet de créer un programme dit en mode Base, qui fonctionne différement et indépendamment des programmes classiques. Le symbole de la clé donne la possibilité d'ajouter un code d'accès qui sera demandé à chaque fois que l'utilisateur tentera d'éditer le programme.
Débuter en basic Casio
Le Basic Casio possède une multitude d'instructions, les plus élémentaires étant les instructions suivantes. Celles-ci permettent de réaliser des algorithme de base (en mathématiques par exemple).
- La saisie de données : ? ([SHIFT]+[PRGM]+[F4])
- Affichage du texte à l'écran, avec les guillemets (e.g. "Texte a afficher"). ([ALPHA]+[*10^x])
Commandes de base
- Les conditions :
If Condition // On définit la condition => [SHIFT][VARS][F1][F1] Then Instructions // Les instructions à exécuter si la condition est vraie => [SHIFT][VARS][F1][F2] Else Instructions // Facultatif, instructions à exécuter si la condition est fausse => [SHIFT][VARS][F1][F3] IfEnd // Fin de la condition => [SHIFT][VARS][F1][F4]
Condition => Instruction // Plus rapide mais ne permet d’exécuter qu'une seule instruction => [SHIFT][VARS][F3][F3]
- Les boucles :
While Condition // On définit la condition de la boucle => [SHIFT][VARS][F1][F6][F6][F1] Instructions // Les instructions à exécuter tant que la condition est vraie WhileEnd // Fin de la boucle => [SHIFT][VARS][F1][F6][F6][F2]
Do // Début de la boucle => [SHIFT][VARS][F1][F6][F6][F3] Instructions // Les instructions à exécuter tant que la condition est vraie LpWhile Condition // On définit la condition de la boucle => [SHIFT][VARS][F1][F6][F6][F4]
La différence entre un boucle "While/WhileEnd" et une boucle "Do/LpWhile" est que, si la condition est fausse depuis le début, une boucle "While/WhileEnd" ne fera aucune itération, tandis qu'une boucle "Do/LpWhile" en fera toujours au moins une.
For valeur initiale "Flèche vers la droite" variable utilisée To valeur finale step pas entre chaque itération Instructions //Les instructions à exécuter pendant la boucle Next //Fin de la boucle
For => [SHIFT][VARS][F1][F6][F1]
To => [SHIFT][VARS][F1][F6][F2]
Step (Facultatif, 1 par défaut) => [SHIFT][VARS][F1][F6][F3]
Next => [SHIFT][VARS][F1][F6][F4]
●Les sauts inconditionnels :
Goto nombre ou lettre //Fait un saut inconditionnel vers le "Lbl" avec le même nombre ou lettre => [SHIFT][VARS][F3][F2] Lbl nombre ou lettre //Marque le point d'arrivée d'un "Goto" avec le même nombre ou lettre => [SHIFT][VARS][F3][F1]
●Les opérateurs relationnels :
premier terme de la condition "=" second terme de la condition //La condition est vraie si les deux termes de la condition ont la même valeur => [SHIFT][VARS][F6][F3][F1]
premier terme de la condition "≠" second terme de la condition //La condition est vraie si les deux termes de la condition ont des valeurs différentes => [SHIFT][VARS][F6][F3][F2]
premier terme de la condition "<" second terme de la condition //La condition est vraie si la valeur du premier terme est strictement inférieure à celle de l'autre terme => [SHIFT][VARS][F6][F3][F4]
premier terme de la condition ">" second terme de la condition //La condition est vraie si la valeur du premier terme est strictement supérieure à celle de l'autre terme => [SHIFT][VARS][F6][F3][F3]
premier terme de la condition "≤" second terme de la condition //La condition est vraie si la valeur du premier terme est inférieure ou égale à celle de l'autre terme => [SHIFT][VARS][F6][F3][F6]
premier terme de la condition "≥" second terme de la condition //La condition est vraie si la valeur du premier terme est supérieure ou égale à celle de l'autre terme => [SHIFT][VARS][F6][F3][F5]
●Les comandes programme :
Prog Nom du programme //Exécute un autre programme dont on spécifie le nom comme une sous-routine => [SHIFT][VARS][F2][F1] Return //Dans un programme exécuté par intermédiaire d'un "Prog", cette instruction permet de revenir dans le programme d'origine => [SHIFT][VARS][F2][F2]
Break //Fait sortir d'une boucle "While/WhileEnd", "Do/LpWhile" ou "For/To/Next" => [SHIFT][VARS][F2][F3]
Stop //Arrête l'exécution du programme => [SHIFT][VARS][F2][F4]
●Autres :
Locate, coordonnée en abscisse, coordonné en ordonnée, "texte à afficher" // Affiche du texte au coordonnées spécifiées (l'écran texte de toutes les calculatrices Casio possède 21 colonnes et 7 lignes) => [SHIFT][VARS][F6][F4][F1]
GetKey //Prend une valeur qui correspond à la touche pressée => [SHIFT][VARS][F6][F4][F2]
Commandes avancées
●Les opérateurs logiques:
Ceux-ci servent à relier deux conditions ou plus pour n'en faire qu'une. Elles se situent dans l'onglet "LOGIC".
And // La condition est vraie si les deux conditions sont vraies => [OPTN][F6][F6][F4][F1] Or // La condition est vraie si au moins l'une des deux conditions est vraie => [OPTN][F6][F6][F4][F2] Not // La condition est vraie si la condition suivant l'opérateur est fausse (inverse la condition) => [OPTN][F6][F6][F4][F3] Xor // La condition est vraie si au moins l'une des deux conditions est fausse => [OPTN][F6][F6][F4][F4]
●Les chaînes de caractères (Strings): Disponibles uniquement sur les calculatrices disposant d'une version de l'OS supérieur à 2
Les chaînes de caractères permettent d'insérer du texte dans des variables spéciales, les strings. Le Basic dispose aussi de fonctions permettant de modifier ces chaînes.
Str + 1 à 6 // Variables contenant les strings. "Str" est à lier avec un chiffre de 1 à 6 pour différencier les 6 chaînes utilisables => [VARS][F6][F5]
Commandes graphiques
On pourrait dire que dans le Casio-BASIC il y a deux écrans, le premier est l'écran texte, qui a 21 colonnes, 7 lignes, et affiche du texte avec la commande "Locate". Le second est l'écran graphique, qui permet de contrôler chaque pixel indépendamment. Il a 127 colonnes et 63 lignes (les dimensions de l'écran, dont une colonne et une ligne sont inaccessibles). Ces deux écrans sont indépendants et on peut pas afficher le contenu des deux en même temps. Les commandes utilisées pour afficher dans cet écran sont les suivantes:
ViewWindow valeur minimale en x, valeur maximale en x, échelle en x, valeur minimale en y, valeur maximale en y, échelle en y //Défini les dimensions de l'écran graphique. Pour pouvoir obtenir toutes les coordonnées des pixels sous la forme de nombres entiers, il est recommandé de la définir comme ceci: ViewWindow 1, 127, 0, 1, 63, 0 => [SHIFT] [F3] [F1]
Il est aussi recommandé d'enlever les axes, la grille et autres afin d'avoir un écran blanc
Cls //Efface l'écran graphique => [SHIFT] [F4] [F1] PlotOn coordonnée en x, cordonnée en y //allume un pixel aux coordonnées spécifiées => [SHIFT] [F4] [F6] [F1] [F2] PlotOff coordonnée en x, cordonnée en y //éteint un pixel aux coordonnées spécifiées => [SHIFT] [F4] [F6] [F1] [F3] PlotChg coordonnée en x, cordonnée en y //change l'état d'un pixel aux coordonnées spécifiées, c'est à dire que s'il est éteint il l'allume et s'il est allumé il l'éteint => [SHIFT] [F4] [F6] [F1] [F4] PxlOn coordonnée en x, cordonnée en y //allume un pixel aux coordonnées spécifiées => [SHIFT] [F4] [F6] [F6] [F3] [F1] PxlOff coordonnée en x, cordonnée en y //éteint un pixel aux coordonnées spécifiées => [SHIFT] [F4] [F6] [F6] [F3] [F2] PxlChg coordonnée en x, cordonnée en y //change l'état d'un pixel aux coordonnées spécifiées, c'est à dire que s'il est éteint il l'allume et s'il est allumé il l'éteint => [SHIFT] [F4] [F6] [F6] [F3] [F3]
La différence entre les commandes Plot et les commandes Pixel est que, dans l'axe des ordonnées pour les commandes Plot l'origine est au en bas de l'écran, et pour les commandes Pixel il est en haut de l'écran. De plus, dans les commandes Plot le repère est la ViewWindow, Tandis que les commandes Pixel ont un repère indépendant
Aller plus loin
Page non finie...