FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Animations : Livres et leçons sur le français
par papydall Aujourd'hui à 1:06

» Animations FLASH pour différentes branches de la Science
par papydall Hier à 20:25

» Problème avec scene3d.
par papydall Hier à 20:11

» Question ?
par papydall Hier à 19:39

» Calculus
par JL35 Hier à 15:43

» plus de caractères avec chr$()
par Marc Hier à 14:59

» @ Jack : lapsus clavis
par Marc Sam 20 Jan 2018 - 19:19

» Quelques nouvelles ...
par Ouf_ca_passe Ven 19 Jan 2018 - 18:07

» Mah-Jong français
par Jicehel Ven 19 Jan 2018 - 11:10

» Rotation d'une image d'un angle quelconque
par JL35 Jeu 18 Jan 2018 - 16:09

» StratégoV8 et V9
par Jean Claude Jeu 18 Jan 2018 - 14:22

» GRID_LOAD
par Jean Claude Mer 17 Jan 2018 - 21:04

» HVIEWER
par Yannick Mer 17 Jan 2018 - 20:31

» KGF_dll - nouvelles versions
par Klaus Mar 16 Jan 2018 - 21:28

» Déformation d'image en trapèze
par mindstorm Mar 16 Jan 2018 - 21:06

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Janvier 2018
LunMarMerJeuVenSamDim
1234567
891011121314
15161718192021
22232425262728
293031    
CalendrierCalendrier

Partagez | 
 

 Bug ou pas bug ?

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Marc



Nombre de messages : 588
Age : 56
Localisation : TOURS
Date d'inscription : 18/03/2014

MessageSujet: Bug ou pas bug ?    Mar 31 Jan 2017 - 23:39

cheers Bonjour à tous,

Je constate que :

IF a=1+b THEN…   OK, fonctionne !  Very Happy

IF a=1+b OR a=0 THEN…  Pas bon => (33)Not correct logical expression…  Crying or Very sad

IF a=(1+b) OR a=0 THEN… OK, fonctionne ! Very Happy

L'expression a=1+b ne passe pas si le mot clé OR est utilisé.

Code:
DIM a,b
IF a=1+b THEN beep
IF a=1+b OR a=0 THEN beep
IF a=(1+b) OR a=0 THEN beep
END

Qu’en pensez-vous ? Bug ou pas bug ? scratch
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Yannick

avatar

Nombre de messages : 8011
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Mer 1 Fév 2017 - 1:44

Tu peux essayer le même type d' expression avec "and" pour le même résultat.
Wink

Maintenant, aller jusqu' à parler de Bug.
affraid
C' est un gros mot pour si peu de chose.
Laughing
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5646
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Bug ou pas bug ?    Mer 1 Fév 2017 - 3:37

Lorsqu’une  expression  comporte des opérateurs de plusieurs catégories (opérateurs arithmétiques, opérateurs de comparaison et  opérateurs logiques) , il faut faire très attention à l’ordre de priorités des opérations.
En cas de doute UTILISEZ LES PARENTHESES pour modifier cet ordre.
L'utilisation de parenthèses, même lorsqu'elles ne sont pas nécessaires, peut améliorer la lisibilité des requêtes et limiter les risques d'erreurs dues à la priorité des opérateurs.

Voici l’ordre de priorités en dehors des parenthèses, de la plus haute à la plus basse priorité :


Opérateurs logiques
NOT,   non logique (négation)
AND,  et logique (multiplication logique, conjonction)
OR,  ou logique   (somme logique, disjonction)
XOR, ou exclusif logique, disjonction exclusive  (non reconnu par Panoramic)
EQV,          équivalence logique (non reconnue par Panoramic)
IMP,    implication logique (non reconnue par Panoramic)


Opérateurs arithmétiques :
Négation (moins unaire) NON arithmétique
Elévation à une puissance (^) POWER en Panoramic
Multiplication et division (*, /)
Division entière (\) non reconnue par Panoramic
Modulo arithmétique (MOD)
Addition et soustraction (+ , -)

Opérateurs de comparaison
Concaténation de chaînes (+) : ce n’est pas un opérateur arithmétique mais il est traité avant tous les opérateurs de comparaison.
Egalité (=)
Inégalité (<>)
Inférieur à (<)
Supérieur à (>)
Inférieur ou égal à (<=)
Supérieur ou égal à (>=)


Marc37 a écrit:
L'expression a=1+b ne passe pas si le mot clé OR est utilisé.

Dans  IF a=1+b OR a=0 THEN …
Comme il n'y a pas de parenthèses, l'évaluation de l'expression se fait en respectant l'ordre de priorité.
Or l'opérateur + (de 1+b) désigne une addition arithmétique, vient ensuite l'opérateur (OR) qui, lui aussi, désigne une addition (mais une addition logique); l'ordre va être de gauche à droite.
Le système  va essayer d’évaluer b OR a  pour l’affecter à a en lui ajoutant 1 et il constate que b OR a n’est pas une expression logique correcte d'où l’erreur.
Donc il n’y a pas de bug à ce niveau.
Il faut et il suffit d’utiliser des parenthèses.


J'espère ne pas avoir écrit des bêtises ! tongue
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Yannick

avatar

Nombre de messages : 8011
Age : 46
Localisation : Bretagne
Date d'inscription : 15/02/2010

MessageSujet: re   Mer 1 Fév 2017 - 15:35

Je crois que tu as tout dis...
Laughing

heu...t 'en ferais pas un petit cours pour le Mag... Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Marc



Nombre de messages : 588
Age : 56
Localisation : TOURS
Date d'inscription : 18/03/2014

MessageSujet: Re: Bug ou pas bug ?    Jeu 2 Fév 2017 - 23:20

Merci de vos réponses ! Very Happy

Quant à la piqûre de rappel de Papydall, ça ne fait pas de mal, c'est toujours utile !

Désolé Papydall, tu es bon pour un article pour le Mag ! Laughing

Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Bug ou pas bug ?    

Revenir en haut Aller en bas
 
Bug ou pas bug ?
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Présentation et bavardage-
Sauter vers: