début bien difficile sur HP 50G !

Ici, on fait dans le petit, le LCD qui déchire sa race, on y cause même calculatrices quand on est en manque !

Modérateur : Politburo

Avatar du membre
bernouilli92
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 5270
Enregistré le : 21 nov. 2012 13:03
Localisation : Ile de France

Re: début bien difficile sur HP 50G !

Message par bernouilli92 »

patt a écrit :Bien merci, sinon à partir du code touche renvoyé par KEY comment obtenir le nom de la touche pressée ? (à la façon de CHR pour les codes ascii)
Il n'y a rien de prévu. Les touches n'ont pas de nom, c'est pour cela qu'elles sont juste numérotées.
Il faut utiliser quelque chose du genre :

Code : Tout sélectionner

DUKE :
«
  DO
  UNTIL KEY
  END
»

K->A :
« { "" 
  "A" "B" "C" "D" "E" "F"
  "G" "H" "I" "J" "K" "L"
  "M" "N" "O" "P" "Q" "R" 
  "S" "T" "U" "V" "W" "X"
  "ENTER" "Y" "Z" "DEL" "BACK"
  "ALPHA" "7" "8" "9" "/"
  "LS" "4" "5" "6" "*"
  "RS" "1" "2" "3" "-" 
  "ON" "0" "." " " "+" }
{ 11 12 13 14 15 16
  21 22 23 24 25 26
  31 32 33 34 35 36
  41 42 43 44 45 46
  51 52 53 54 55 
  61 62 63 64 65
  71 72 73 74 75 
  81 82 83 84 85
  91 92 93 94 95 } 
  ROT POS 1 + GET
»
Exemple d'utilisation :

Code : Tout sélectionner

« DUKE K->A »
Ceci est pour la HP48, pour la HP50 il faut adapter le nom des touches
HP, Casio, Sharp, Psion, quelques TI et divers autres
Avatar du membre
C.Ret
Fonctionne à 9600 bauds
Fonctionne à 9600 bauds
Messages : 3422
Enregistré le : 31 mai 2008 23:43
Localisation : N 49°22 E 6°10

Re: début bien difficile sur HP 50G !

Message par C.Ret »

Je suis inquiet !

Sur mon HP-28S, la fonction KEY renvoit deux arguments:
- au niveau 1: elle retourne 0 ou 1 selon que l'on a appuyé ou non sur une touche
- au niveau 2: elle donne éventuellement le nom de la touche

Il n'y a pas de code et l'on obtient directemetn le nom de la touche !
Est-ce différent sur une HP-50g ?
SHARP PC-1211 PC-1360 EL-5150 PC-E500 | Commodore C=128D | Texas Instruments Ti-57LCD Ti-74BASICalc Ti-92II Ti-58c Ti-95PROCalc Ti-30XPROMathPrint | Hewlett-Packard HP-28S HP-41C HP-15C HP-Prime HP-71B | CASIO fx-602p | NUMWORKS | Graphoplex Rietz Neperlog | PockEmul | Sommaire des M.P.O. | Ma...dov'il sapone.
Avatar du membre
bernouilli92
Fonctionne à 14400 bauds
Fonctionne à 14400 bauds
Messages : 5270
Enregistré le : 21 nov. 2012 13:03
Localisation : Ile de France

Re: début bien difficile sur HP 50G !

Message par bernouilli92 »

Tu as raison, KEY sur hp28s revoit bien le nom de la touche sous forme de chaîne de caractères.
Et sur hp50g, cela fonctionne comme sur la 48, KEY renvoit le numéro de la touche avec les particularités des touches de direction. Les touches 24 et 26 n'existent pas et les touches gauche, bas et droite ont pour valeurs 34,35 et 36.
La touche ON ne peut être testée car elle interrompt le programme.
HP, Casio, Sharp, Psion, quelques TI et divers autres
HP-JP
Fonctionne à 75 bauds
Fonctionne à 75 bauds
Messages : 31
Enregistré le : 04 sept. 2020 13:40

Re: début bien difficile sur HP 50G !

Message par HP-JP »

Hello,

Je réouvre ce post pour une question de débutant :)
Familiarisé avec les HP48, je rencontre un soucis à la noix avec les 49g+ et 50g.

Voici un exemple :
"Chaine" TYPE me renvoie 2. avec ce foutu . (point)
Comment puis-je faire pour ne pas l'avoir ou alors le transformer en 2 tout simplement ?
Avatar du membre
tyann
Fonctionne à 1200 bauds
Fonctionne à 1200 bauds
Messages : 846
Enregistré le : 06 oct. 2012 14:37

Re: début bien difficile sur HP 50G !

Message par tyann »

Bonsoir

Sur Hp 50g, tu as 'R->I' qui convertit un réél en entier.
Ti(s) 60, 62 Galaxy, 66, 67 Galaxy, 68, 74 Basical 80, 81, 82, 83+, 83 CE, 84+SE, 85, 86, 89, 89 titanium, 92, 95 Procalc, v200, nSpire cx
Hp(s) 35s, 41CX, 28S, 48g, 50g, 39gII, Prime G1 et G2,
Casio(s) fx 602P, 702P, 4000P, 4500P, 6000G, 6900G, 7700G, 8500g, PB-700, CG-20, Graph 95 sd
Psion(s)II LZ64, siena, s3a, s3mx, s5mx.
Sharp(s) pc-1350, 1403, 1500A, E500, El 5120, 9200, 9600
Canon X-07
Gilles59
Fonctionne à 2400 bauds
Fonctionne à 2400 bauds
Messages : 1602
Enregistré le : 27 oct. 2010 20:46

Re: début bien difficile sur HP 50G !

Message par Gilles59 »

HP-JP a écrit : 20 sept. 2020 17:26 Hello,

Je réouvre ce post pour une question de débutant :)
Familiarisé avec les HP48, je rencontre un soucis à la noix avec les 49g+ et 50g.

Voici un exemple :
"Chaine" TYPE me renvoie 2. avec ce foutu . (point)
Comment puis-je faire pour ne pas l'avoir ou alors le transformer en 2 tout simplement ?
Hello...

La question est loin d'être triviale ;D C'est sans doute pour ce genre de chose que la Prime a séparé presque totalement le mode CAS et le mode approximatif. Je préfère la façon de faire de la HP50g mais ça peut sembler compiqué.

la HP50 dispose d'un nouveau type d'objet, les nombres exacts. En mode exact |R= s'affiche en haut. RightShift & ENTER,permet de basculer entre mode exact et mode approximatif. Le mode "exact" est surtout utile pour les maths. Il permet de travailler avec des nombres de longueurs illimités et d'avoir des résultats 'exact' par exemple '1/3' et pas 0,3333333

En mode |R~
2 3 / renvoie 0.666666666667

En mode |R=
2 3 / renvoie 2/3
mais 2. 3 / renvoie 0.666666666667. Un seul nombre approximatif passe tous les calculs en approximatif.

Mais rien n'empêche d'utiser des nombres approximatifs en mode "exact"... En en mode approximatif 2 ENTER devient automatiquement 2. bref...
Sauf pour faire des "math pures" il faut être en more |R~

Pour bien différencier les 2 types de nombres, les nombres "approximatifs" auront toujours un . à la fin. C'est bien le même type d'objet que les anciennes HP RPL mais l'affichage est différent. Ca peut parfois poser des pb de compatibilité si tu utilises des commandes genre ->STR puisque tu obtiens "2." au lieu de "2"

2. TYPE renvoie 0. c'est à dire que cet objet est un nombre réel (le seul qui existe sur les anciennes HP RPL j'ai pas ma 48 sous la main?)
2 TYPE renvoie 28.

Mais venons-en à la réponse :

Pour passer d'un nombre "approximatif" en nombre exact, tu peux utiliser la commande →Q
2. →Q renvoie 2 (dans ce cas R→I fonctionne aussi)
2.5 →Q renvoie 5/2

Pour passer d'un nombre exact à un nombre approximatif, utiliser la commande →NUM
2 →NUM renvoie 2.
2/3 →NUM renvoie 0.666666666667
Casio FX-502P /602P / 603P / FX180P+ / FX4000P / TI57 / TI66 / TI74 Basicalc / TI95 Procalc / HP12C / HP15C LE / DM41L / HP 30B / HP39GII / HP 48SX USA / 49G / 49g+ / 50G / 50G NewRPL / HP Prime / Oric 1 / Amstrad CPC 6128+ CM14 et MM12 / Alice 32
HP-JP
Fonctionne à 75 bauds
Fonctionne à 75 bauds
Messages : 31
Enregistré le : 04 sept. 2020 13:40

Re: début bien difficile sur HP 50G !

Message par HP-JP »

Merci tyann et Gilles pour vos réponses et éclaircissement.
J'essaie de retranscrire mes programmes HP48 vers HP50 et c'est loin d'être évident avec ce mode exact et approximatif. Ca mets la grouille dans tous les tests de conditions :?
Répondre

Retourner vers « Tous les Pockets »